Linux 6.0 mengintegrasikan perbaikan kinerja AMD untuk menyelesaikan “penantian hantu” lama

Pagi ini saya menarik perhatian pada beberapa pekerjaan yang tertunda Ada solusi untuk chipset berusia 20 tahun di kernel Linux yang merusak sistem AMD modern Dengan terus menerapkan perubahan ke perangkat modern secara tidak benar. Untungnya, patch ini sekarang telah diambil oleh Linus Torvalds pada waktunya untuk Linux 6.0 Kernel stabil diharapkan untuk ditayangkan pada akhir minggu depan.

Seperti yang dijelaskan pada artikel sebelumnya, sejak tahun 2002 ketika dukungan ACPI ditambahkan ke kernel, proses “mock wait” ditambahkan karena beberapa chipset pada waktu itu di mana STPCLK# tidak dikonfirmasi tepat waktu di sepanjang jalur idle kernel. Pembacaan phantom I/O menunda pemrosesan instruksi tambahan hingga CPU benar-benar dimatikan. Tetapi seorang insinyur AMD baru-baru ini memperhatikan bahwa perilaku ini diterapkan pada mesin AMD Zen 3 terbaru dan menemukan bahwa hal itu dapat menyebabkan masalah kinerja untuk beban kerja yang dengan cepat beralih antara fase sibuk dan tidak aktif, terutama untuk platform penghitungan yang lebih besar seperti platform Ryzen Threadripper dan EPYC.



Pengambilan sampel beban kerja tertentu dengan IBS pada sistem AMD Zen3 menunjukkan bahwa sejumlah besar waktu dihabiskan dalam proses dummy, yang salah dihitung sebagai tempat tinggal di C-State. Nilai tempat tinggal yang besar di C-State dapat menginstruksikan gubernur CPU untuk merekomendasikan status C yang lebih dalam selama status idle berikutnya, memulai lingkaran setan, menurunkan kinerja dalam beban kerja yang dengan cepat bertransisi antara fase sibuk dan idle.

Salah satu beban kerja tersebut adalah tbench di mana penurunan kinerja besar-besaran dapat terlihat selama proses tertentu.

Insinyur AMD K Prateek Nayak telah menunjukkan dampak kinerja yang signifikan yang dapat ditimbulkan oleh solusi perangkat keras yang salah ini pada sistem AMD. Sementara itu, sistem Intel tidak menggunakan jalur kode ini untuk perangkat keras modern dan karenanya tidak terpengaruh.

READ  Lupakan Microsoft Windows 11! Inilah alasan utamanya

Patch AMD awalnya disarankan tetapi kemudian dibersihkan/disederhanakan oleh insinyur Intel Dave Hansen. Patch ini sama sekali tidak mengimplementasikan solusi “dummy wait” ini kecuali pada sistem Intel yang lebih lama (pra-Nehalem), sehingga sistem AMD sekarang akan meninggalkan proses ini yang dapat menurunkan kinerja sistem modern. Karena sebagian besar mempengaruhi beban kerja yang sering beralih antara status sibuk dan tidak aktif serta lebih terlihat untuk platform penghitungan yang lebih besar, kinerja server AMD EPYC dengan patch ini seharusnya sangat menarik terutama untuk database beban kerja web/server dan tes cepat lainnya. Saya akan merilis set lengkap benchmark berbasis luas untuk mengevaluasi patch ini besok.

Patch disorot malam ini sebagai bagian dari perbaikan “x86/urgent” yang dikirim sebagai bagian dari awan ini sebelum Rilis stabil Linux 6.0 diharapkan pada 2 Oktober. Sangat menyenangkan melihatnya turun begitu cepat dan mengawasi beberapa tolok ukur.

Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *