Kernel Linux ialah tulang belakang sistem pengendalian (OS) Linux, dan merupakan antara muka asas antara perkakasan komputer dan prosesnya.
Beberapa hari yang lalu Kami berkongsi di sini di blog berita tentang salah satu perubahan Apa yang kami dapati semasa pelancaran daripada kernel Linux 6.9, yang sedang dalam pembangunan dan pelbagai perubahan telah pun diketahui dan apa yang kami umumkan ialah EXT2 telah pun masuk ke dalam kategori usang dan juga penggunaan pemacu NTFS lama akan diketepikan memihak kepada pemandu yang dibangunkan oleh Paragon Software.
Sekarang, dalam berita terkini tentang ciri-ciri baharu yang Linux 6.9 akan hadirkan kepada kami, ialah Versi Kernel ini akan membawa peningkatan yang ketara dalam masa permulaan untuk pengguna yang menguruskan sistem dengan jumlah RAM yang besar, terutamanya yang Mereka menggunakan halaman HugeTLB. Ini mengakibatkan pengurangan yang besar dalam masa yang diperlukan untuk memulakan halaman ini semasa proses but sistem.
Dan perubahan itu ditambah dalam Linux 6.9 akan membolehkan sistem dengan sejumlah besar halaman HugeTLB mengalami pengurangan yang ketara pada masa mula. Sebagai contoh, pada sistem 2TB di mana 1800 halaman 1GB dimulakan, yang pada masa ini mereka mengambil masa antara 1 dan 2 saat daripada jumlah keseluruhan 10 saat, yang sudah pasti peningkatan yang ketara pada masa ini. Begitu juga, pada hos Intel 12TB di mana 11 halaman 776GB dimulakan, yang boleh mengambil masa lebih seminit, anda akan melihat pengurangan ketara dalam masa permulaan ini.
Kemajuan ini telah dimungkinkan oleh kerja berdedikasi pemaju Linux Gang Li dari Bytedance, yang melaksanakan satu siri tampalan yang melalui pelbagai semakan untuk memastikan pelaksanaan yang cekap. Infrastruktur kernel sedia ada, seperti padata_do_multithreaded, digunakan dengan pengubahsuaian yang minimum untuk mencapai keputusan ini.
Dua kemas kini dalam v6…
– Memperbaiki potensi pepijat dalam together_bootmem_prealloc_node
Pelaksanaan padata_do_multithreaded memastikan bahawa setiap
Tugas together_bootmem_prealloc_node mengendalikan nod. Walau bagaimanapun, API menerangkan
dalam ulasan padata_do_multithreaded menunjukkan bahawa padata_do_multithreaded juga
Anda boleh menetapkan berbilang nod kepada tugas together_bootmem_prealloc_node.Untuk mengelakkan kemungkinan ralat daripada perubahan masa hadapan kepada padata_do_multithreaded,
together_bootmem_prealloc_parallel diperkenalkan untuk membungkus
together_bootmem_prealloc_node.
Faedahnya daripada penambahbaikan ini terutamanya terkenal dalam persekitaran yang ketersediaan perkhidmatan dan masa operasi sistem adalah kritikal, seperti dalam kes hyperscalers dan organisasi besar yang menguruskan pelayan yang sangat besar. Pengurangan masa permulaan semasa but semula memberi manfaat yang besar untuk memastikan masa hidup yang lebih pantas dan cekap.
Selain itu, Ia juga bernilai menyebut satu lagi perubahan yang telah disertakan dalam Linux 6.9 yang merupakan tampalan daripada jurutera Linux berpengalaman di Intel, yang memperkenalkan teknik yang lebih baik untuk mengehadkan lebar jalur memori dalam penyegaran cache x86, sama seperti yang digunakan oleh Intel dalam CPU RDT dan AMD EPYC dengan kod resctrl.
Pengarang tampalan menyebut bahawa:
Gelung maklum balas MBA_mbps meningkatkan pendikitan apabila kumpulan menggunakan lebih lebar jalur daripada set pengguna dalam fail skema dan mengurangkan pendikitan apabila ia berada di bawah sasaran.
Perlu dinyatakan bahawa teknik baru untuk mengehadkan lebar jalur memori direka bentuk untuk mengendalikan beban kerja dengan tahap beban yang tidak seragam dengan lebih cekaps, mengelakkan penalti yang tidak perlu yang berlaku dalam versi kernel sebelumnya.
Untuk mengelakkan turun naik yang tidak perlu dalam kelajuan dalam setiap lelaran, bendera "delta_comp" digunakan untuk menunjukkan perubahan sebenar dalam lebar jalur yang akan direkodkan dalam lelaran seterusnya dalam "delta_bw". Pendikitan hanya dikurangkan jika lebar jalur semasa ditambah delta_bw berada di bawah sasaran pengguna.
Oleh yang demikian disebutkan bahawa Algoritma berfungsi dengan baik dengan beban kerja lebar jalur yang berterusan, tetapi ia mungkin gagal jika beban kerja berubah hanya apabila pendikit berubah. Untuk menangani perkara ini, teknik yang lebih mudah telah dilaksanakan yang mengira potensi peningkatan lebar jalur jika pendikitan dikurangkan ke tahap yang lebih tinggi seterusnya, memastikan ia kekal di bawah sasaran pengguna sebelum pendikitan dikurangkan.
Jika anda berminat untuk mengetahui lebih lanjut mengenainya, anda boleh merujuk butiran dalam pautan berikut:
- Hugetlb: Parallelize halaman Hugetlb bermula pada permulaan
- Pelaksanaan teknik pengehadan MBA_mbps baharu