Saya menggunakan mesin Debian 8 amd64 untuk benchmarking. Selama percobaan, saya ingin CPU beroperasi pada frekuensi yang tetap (lebih disukai maksimum yang dimungkinkan). Ini akan mengesampingkan kecepatan jam CPU sebagai sumber variasi dalam hasil.
Setelah membaca, tampaknya hal yang benar untuk dilakukan adalah mengubah pengatur CPU performance
, yang dijelaskan di sini dalam dokumentasi kernel Linux :
"Kinerja" gubernur CPUfreq menetapkan CPU secara statis ke frekuensi tertinggi dalam batas scaling_min_freq dan scaling_max_freq.
Sayangnya, rincian lebih lanjut tentang scaling_min_freq
dan scaling_max_freq
tidak disediakan. Semoga itu tidak menjadi masalah, karena frekuensi CPU yang digunakan adalah nilai maksimum dari interval.
Jadi saya telah mengaktifkan gubernur ini menggunakan cpufreq-set:
$ cat / sys / devices / system / cpu / cpu * / cpufreq / scaling_governor kinerja kinerja kinerja kinerja
Dan untuk ukuran yang baik, saya juga menonaktifkan mode turbo boost di bios:
$ cat / sys / devices / system / cpu / intel_pstate / no_turbo 1
Berdasarkan uraian kinerja gubernur di atas, saya berharap tidak ada fluktuasi dalam kecepatan clock CPU. Namun jika saya berulang kali berlari cpufreq-info
, saya melihat kecepatan jam berfluktuasi:
$ cpufreq-info | grep 'CPU fr saat ini' frekuensi CPU saat ini adalah 4,00 GHz. frekuensi CPU saat ini adalah 3,99 GHz. frekuensi CPU saat ini adalah 4,00 GHz. frekuensi CPU saat ini adalah 4,00 GHz. $ cpufreq-info | grep 'CPU fr saat ini' frekuensi CPU saat ini adalah 4,00 GHz. frekuensi CPU saat ini adalah 4,00 GHz. frekuensi CPU saat ini adalah 4,00 GHz. frekuensi CPU saat ini adalah 3,96 GHz. $ cpufreq-info | grep 'CPU fr saat ini' frekuensi CPU saat ini adalah 4,00 GHz. frekuensi CPU saat ini adalah 4,00 GHz. frekuensi CPU saat ini adalah 4,00 GHz. frekuensi CPU saat ini adalah 3,94 GHz. $ cpufreq-info | grep 'CPU fr saat ini' frekuensi CPU saat ini adalah 4,01 GHz. frekuensi CPU saat ini adalah 4,00 GHz. frekuensi CPU saat ini adalah 4,00 GHz. frekuensi CPU saat ini adalah 3,98 GHz.
Apakah fluktuasi ini disebabkan oleh perangkat keras, BIOS, kernel, atau faktor lain? Apakah ada cara untuk mengatur frekuensi CPU sedemikian rupa sehingga tidak berfluktuasi sama sekali?