Patch Linux Bertujuan Untuk Mengurangi Kinerja yang Tidak Konsisten / Masalah Ketidakseimbangan NUMA

Seri patch kernel Linux yang menarik telah diposting minggu ini untuk mengatasi perilaku ketidakseimbangan NUMA yang tidak konsisten untuk setidaknya beberapa beban kerja. Dalam kasus seperti itu, tambalan ini mengatasi perbedaan kinerja yang terlihat selama jumlah rilis kernel Linux yang terjadi untuk sementara waktu.
Pengembang kernel Linux lama Mel Gorman merangkum masalah ini dengan baik di posting milis kernelnya:
Masalah dilaporkan secara pribadi terkait dengan kinerja NAS yang tidak konsisten saat diparalelkan dengan MPICH. Akar masalahnya adalah bahwa penempatan awal tidak dapat diprediksi dan mungkin ada ketidakseimbangan yang lebih besar dari yang diharapkan antara node NUMA. Karena ada kapasitas cadangan dan kesalahannya bersifat lokal, ketidakseimbangan tetap ada untuk waktu yang lama dan kinerja menurun.
Ini bukan 100% masalah “ketidakseimbangan yang diizinkan” karena mengatur ketidakseimbangan yang diizinkan ke 0 tidak memperbaiki masalah tetapi ketidakseimbangan yang diizinkan berkontribusi pada masalah kinerja. Perilaku yang tidak terduga baru-baru ini diperkenalkan oleh commit c6f886546cb8 (“sched/fair: Trigger the update of blocked load on new idle cpu”).
mpirun forks hydra_pmi_proxy helper dengan MPICH yang tidur sebelum mengeksekusi target beban kerja. Saat tugas baru sedang tidur, potensi ketidakseimbangan tidak diamati karena idle_cpus tidak mencerminkan tugas yang akan berjalan dalam waktu dekat. Seberapa buruk masalahnya tergantung pada waktu kapan fork terjadi dan apakah tugas baru masih berjalan. Akibatnya, ketidakseimbangan awal yang besar mungkin tidak terdeteksi sampai beban kerja sepenuhnya berjalan. Setelah berjalan, NUMA Balancing memilih node yang disukai berdasarkan lokalitas dan load balancing runtime sering mengabaikan tugas karena can_migrate_task() gagal karena alasan lokalitas atau task_hot dan sebagai gantinya memilih tugas yang tidak terkait. Gorman mengonfirmasi bahwa masalah telah terjadi untuk sementara waktu — mulai sekitar Linux 5.7~5.8, diperbaiki di Linux 5.12, dan rusak lagi di Linux 5.13. Untungnya, meskipun dia dapat mengerjakan seri tambalan ini untuk mengatasi masalah ini yang memengaruhi NPB dengan MPICH dan kemungkinan beban kerja lainnya juga:

Lihat seri tambalan ini untuk detail lebih lanjut tentang pekerjaan yang tertunda.

Itulah berita seputar Patch Linux Bertujuan Untuk Mengurangi Kinerja yang Tidak Konsisten / Masalah Ketidakseimbangan NUMA, semoga bermanfaat. Disadur dari Phoronix.com.