Tôi đang sử dụng máy Debian 8 amd64 để đo điểm chuẩn. Trong quá trình thử nghiệm, tôi muốn CPU hoạt động ở tần số cố định (tốt nhất là tối đa có thể). Điều này sẽ loại trừ tốc độ xung nhịp của CPU như là một nguồn thay đổi trong kết quả.
Sau khi đọc, có vẻ như điều cần làm là thay đổi bộ điều khiển CPU thành performance
, được mô tả ở đây trong tài liệu nhân Linux :
"Hiệu suất" của bộ điều khiển CPUfreq đặt CPU tĩnh ở tần số cao nhất trong các biên của scaling_min_freq và scaling_max_freq.
Đáng buồn thay, chi tiết thêm về scaling_min_freq
và scaling_max_freq
không được cung cấp. Hy vọng nó không thành vấn đề, vì tần số CPU được sử dụng là giá trị tối đa của khoảng thời gian.
Vì vậy, tôi đã kích hoạt thống đốc này bằng cách sử dụng cpufreq-set:
$ cat / sys / thiết bị / hệ thống / cpu / cpu * / cpufreq / scaling_gocateor hiệu suất hiệu suất hiệu suất hiệu suất
Và để có biện pháp tốt, tôi cũng đã tắt chế độ turbo boost trong bios:
$ cat / sys / thiết bị / hệ thống / cpu / intel_pstate / no_turbo 1
Dựa trên mô tả ở trên của bộ điều chỉnh hiệu năng, tôi sẽ không mong đợi sự biến động của tốc độ xung nhịp CPU. Tuy nhiên, nếu tôi liên tục chạy cpufreq-info
, tôi thấy tốc độ đồng hồ dao động:
$ cpufreq-thông tin | grep 'CPU hiện tại' tần số CPU hiện tại là 4,00 GHz. tần số CPU hiện tại là 3,99 GHz. tần số CPU hiện tại là 4,00 GHz. tần số CPU hiện tại là 4,00 GHz. $ cpufreq-thông tin | grep 'CPU hiện tại' tần số CPU hiện tại là 4,00 GHz. tần số CPU hiện tại là 4,00 GHz. tần số CPU hiện tại là 4,00 GHz. tần số CPU hiện tại là 3,96 GHz. $ cpufreq-thông tin | grep 'CPU hiện tại' tần số CPU hiện tại là 4,00 GHz. tần số CPU hiện tại là 4,00 GHz. tần số CPU hiện tại là 4,00 GHz. tần số CPU hiện tại là 3,94 GHz. $ cpufreq-thông tin | grep 'CPU hiện tại' tần số CPU hiện tại là 4,01 GHz. tần số CPU hiện tại là 4,00 GHz. tần số CPU hiện tại là 4,00 GHz. tần số CPU hiện tại là 3,98 GHz.
Là sự biến động này do phần cứng, BIOS, hạt nhân hoặc một số yếu tố khác? Có cách nào để đặt tần số CPU sao cho nó không dao động không?