Satu set patch baru telah diposting hari ini untuk mengaktifkan penjadwalan cluster untuk CPU hybrid x86. Pada gilirannya, upaya terbaru penjadwalan cluster untuk CPU Core modern dari Alder Lake dan yang lebih baru menghasilkan beberapa manfaat kinerja kecil dibandingkan kode saat ini.
Penjadwalan klaster sebelumnya dicoba oleh para insinyur Intel untuk Linux, tetapi akhirnya menyebabkan regresi... Saya menyoroti masalah tersebut pada tahun 2021 dengan Penjadwalan Klaster Baru Linux 5.16 Menyebabkan Regresi, Lebih Merugikan Danau Alder. Sekarang meskipun penjadwalan cluster x86 terbaru untuk CPU hybrid ini harus dalam kondisi yang lebih baik.
Insinyur
Intel Tim Chen memposting seri tambalan hari ini dan berkomentar di sana:
"Domain penjadwalan cluster tidak diaktifkan pada CPU hybrid x86 karena logika tidak ada untuk melakukan penyeimbangan beban yang tepat antara cluster dengan CPU SMT dalam inti tunggal dan cluster dengan banyak CPU Atom.
Ketika penjadwalan klaster pertama kali diperkenalkan ke x86, terlihat bahwa dengan penjadwalan klaster pada CPU hibrid, tugas berulir tunggal sering kali berakhir pada inti Atom (atau E-core) alih-alih pada inti besar (atau P-core) yang menganggur, menghasilkan lebih rendah pertunjukan. Karenanya penjadwalan cluster dinonaktifkan pada CPU hybrid x86. (Lihat: https://www.phoronix.com/review/linux-516-regress)
Ricardo baru-baru ini memperkenalkan seri tambalan yang sangat meningkatkan logika penyeimbangan muatan antara P-core dan E-core pada CPU hybrid x86.
https://lore.kernel.org/lkml/[email dilindungi]/T/#m16ebc8de64dbf4c54adebab701b42b47805105f4
Namun, seri tambalan tersebut tidak cukup untuk memungkinkan pengaktifan penjadwalan klaster pada CPU x86 hybrid. Seri tambalan ini menyediakan beberapa perbaikan tambahan yang diperlukan untuk penyeimbangan beban antara grup penjadwalan klaster yang terdiri dari CPU SMT dari Big core dan grup penjadwalan klaster yang terdiri dari CPU Atom. Dengan tambalan ini diterapkan di atas seri tambalan Ricardo, beban diseimbangkan dengan benar antara kluster P-core dan E-core. CPU menganggur digunakan dalam urutan yang benar:
1) SMT CPU pada P-core yang menganggur,
2) E-core menganggur,
3) CPU SMT yang tidak terpakai dengan saudaranya yang sibuk."Dengan tambalan baru ini, insinyur Intel menemukan peningkatan hingga beberapa persen dengan pengujian CPU hibrid P/E:
"Saya menguji beberapa benchmark berulir tunggal di suite Phoronix yang sebelumnya telah menunjukkan regresi saat penjadwalan klaster pertama kali diaktifkan. Penjadwalan klaster menggunakan seri tambalan ini bekerja sebaik kernel vanilla.
Single Threaded 6.3-rc5 dengan Perbaikan cluster
Penjadwalan tolok ukur dalam Kinerja
(run-run deviasi)
-------------------------------------------------- -----------------------------------------
tjbench (+/- 0.08%) (+/- 0.23%) -0.23%
PhPbench (+/- 0,31%) (+/- 0,89%) -0,39%
flac (+/- 0,58%) (+/- 0,22%) +0,17%
pybench (+/- 3,16%) (+/- 0,27%) +2,55%
Untuk tolok ukur multi-utas, saya mencoba kernel build dan tensor flow lite. Penjadwalan kluster bekerja paling baik untuk kasus 10 utas di mana 6 utas berjalan pada P-core, 2 utas pada satu kluster Atom, dan 2 utas pada kluster Atom lainnya. Sedangkan kernel vanilla akan memiliki 6 utas pada P-core, 4 utas pada satu kluster Atom. Padahal perbedaannya kecil dan termasuk dalam variasi lari.
Multi Threaded 6.3-rc5 dengan Perbaikan cluster
Penjadwalan tolok ukur dalam Kinerja
(-#utas) (penyimpangan run-run)
-------------------------------------------------- -----------------------------------------
Kbuild-8 (+/- 2.90%) (+/- 1.16%) -0.76%
Kbuild-10 (+/- 3,08%) (+/- 3,09%) +0,64%
Kbuild-12 (+/- 3,28%) (+/- 3,55%) +0,91%
Tensor Lite-8 (+/- 4,84%) (+/- 4,61%) -0,23%
Tensor Lite-10 (+/- 0,87%) (+/- 1,45%) +0,47%
Tensor Lite-12 (+/- 1,37%) (+/- 1,04%) -0,12%"Akan menarik untuk melihat bagaimana upaya penjadwalan cluster baru ini berhasil, meskipun sudah terlambat untuk melihat di v6.4 siklus jadi tidak akan menjadi mainline sekarang sampai setidaknya v6.5. Bagaimanapun karena saya punya waktu untuk menguji tambalan baru, saya akan mencobanya di Alder Lake dan Raptor Lake untuk melihat bagaimana pengaruhnya kinerja Linux pada rentang beban kerja yang lebih luas.
Lihat utas milis kernel ini jika tertarik dengan pekerjaan penjadwalan cluster terbaru ini untuk CPU hibrid Intel.
Itulah berita seputar Intel Memposting Patch Linux Baru Untuk Penjadwalan Cluster Dengan CPU Hybrid, semoga bermanfaat. Disadur dari Phoronix.com.Artikel Diperbarui pada: May 04, 2023
Kontributor: Syauqi Wiryahasana
Model: Haifa Manik Intani