ฉันใช้ CentOS 7 (7.9.2009) (เคอร์เนล 3.10.0-1160.49.1.el7.x86_64) บนแล็ปท็อปที่ค่อนข้างเก่า (Lenove T61) พร้อมซีพียูดูอัลคอร์ (Intel(R) Core(TM)2 Duo CPU T7300 @ 2.00GHz) ไดรเวอร์สำหรับการปรับขนาด CPU คือ acpi-cpufreq และเมื่ออยู่บน ประสิทธิภาพ ผู้ว่าราชการ ฉันสามารถให้ CPU ทำงานที่ความเร็ว CPU สูงสุดตามที่ระบุไว้ใน /sys/devices/system/cpu/cpufreq/policy0/cpuinfo_max_freq
และสังเกตสิ่งนี้โดยทำ:
$ grep -i mhz /proc/cpuinfo
ซีพียู MHz : 2001.000
ซีพียู MHz : 2001.000
และมันก็นิ่งในระดับความเร็วนี้
ฉันสามารถตรวจสอบได้โดยทำดังนี้
$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq
2001000
$ sudo cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq
2001000
ฉันกำลังพยายามรันด้วยความถี่คงที่สำหรับโปรแกรมแบบเรียลไทม์ที่นับรอบสัญญาณนาฬิกาของ CPU เพื่อจับเวลา ฉันรวบรวมเคอร์เนลที่กำหนดเอง (5.10.83-rt58) เพื่อรองรับชิ้นส่วนของฮาร์ดแวร์ที่ไม่รองรับในเคอร์เนล CentOS เริ่มต้น (3.10.0) การปรับขนาด CPU มักจะทำให้ความถี่สัญญาณนาฬิกากระโดดไปมา แต่ฉันพบว่าฉันสามารถรับความถี่ที่คงที่ได้โดยการตั้งค่าทั้งหมดใน /sys/devices/system/cpu/cpu*/cpuidle/state*/disable
ถึง 1
. เมื่อฉันตรวจสอบความถี่:
$ grep -i mhz /proc/cpuinfo
ซีพียู MHz : 1995.106
ซีพียู MHz : 1995.106
มันไม่ได้อยู่ที่ 2001MHz เท่าที่เห็นในเคอร์เนล 3.10.0 คำสั่งต่อไปนี้ตรวจสอบสิ่งนี้:
$ cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_cur_freq
2538106
แต่ผลลัพธ์ของ:
$ sudo cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_cur_freq
2001000
แตกต่างกัน คำถามของฉันคือไม่มีใครรู้ว่าเหตุใด CPU ของฉันจึงไม่ทำงานที่ความถี่สูงสุด (2001MHz) แต่น้อยกว่า ~6MHz มีการเปลี่ยนแปลงอย่างมากในการปรับขนาดซีพียูระหว่างเคอร์เนล 3.10 และ 5.10 หรือไม่