ความถี่ของ CPU อยู่เสมออย่างน้อยที่สุดแม้ว่า CPU isage จะเป็น 100%


15

ฉันไม่รู้ว่าเมื่อไรที่ปัญหานี้เริ่มเกิดขึ้นอาจเป็นเพราะฉันติดตั้ง Ubuntu (16.04 ใหม่) ฉันสังเกตว่า Ubuntu ช้าผิดปกติสภาพแวดล้อมเปลี่ยนแปลงเร็วและการใช้งาน CPU สูงแม้ในขณะที่ไม่ได้ใช้งานในตอนแรกฉันคิดว่าบางโปรแกรมช้าลง

หลังจากนั้นครู่หนึ่งฉันก็พบว่าเกิดอะไรขึ้นความถี่ซีพียูตั้งไว้ที่ 800 MHz ไม่หยุดไม่ว่าจะเกิดอะไรขึ้น ความถี่สูงสุดควรเป็น 3100 MHz พร้อม Turbo-boost และ 2000 MHz ฉันตั้งใจตั้งการใช้งาน CPU (ทั้ง 4 เธรดใน 2 คอร์) เป็น 100% โดยให้ Blender ทำการแสดงบางอย่างบน CPU มันยังคงอยู่ที่ 800 MHz

ฉันได้ลองตั้งค่าโปรไฟล์ประสิทธิภาพสูงสุดแล้ว แต่ก็ยังอยู่ในระดับต่ำ ฉันได้ทำการทดสอบอุณหภูมิดูเหมือนว่าจะเป็น 60 ° C ตลอดเวลาเมื่อ 87 ° C ถือว่าสูงและสำคัญ 105 ° C ฉันกำลังทำงานโดยใช้ไฟ AC ตลอดเวลาแบตเตอรี่ดูเหมือนจะไม่ได้ชาร์จใหม่มานานแล้ว

นี่คือสิ่งที่รายงาน cpufreq-info:

 driver: intel_pstate
 CPUs which run at the same hardware frequency: 0
 CPUs which need to have their frequency coordinated by software: 0
 maximum transition latency: 0.97 ms.
 hardware limits: 800 MHz - 3.10 GHz
 available cpufreq governors: performance, powersave
 current policy: frequency should be within 2.00 GHz and 3.10 GHz.
                 The governor "performance" may decide which speed to use
                 within this range
 current CPU frequency is 800 MHz (asserted by call to hardware).

มันเหมือนกันสำหรับหน่วย 3 CPU อื่น ๆ

นี่คือสิ่งที่รายงาน lscpu:

Architecture:          x86_64
CPU op-mode(s):        32-bit, 64-bit
Byte Order:            Little Endian
CPU(s):                4
On-line CPU(s) list:   0-3
Thread(s) per core:    2
Core(s) per socket:    2
Socket(s):             1
NUMA node(s):          1
Vendor ID:             GenuineIntel
CPU family:            6
Model:                 58
Model name:            Intel(R) Core(TM) i7-3537U CPU @ 2.00GHz
Stepping:              9
CPU MHz:               799.921
CPU max MHz:           3100,0000
CPU min MHz:           800,0000
BogoMIPS:              3990.99
Virtualization:        VT-x
L1d cache:             32K
L1i cache:             32K
L2 cache:              256K
L3 cache:              4096K
NUMA node0 CPU(s):     0-3
Flags:                 fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush dts acpi mmx fxsr sse sse2 ss ht tm pbe syscall nx rdtscp lm constant_tsc arch_perfmon pebs bts rep_good nopl xtopology nonstop_tsc aperfmperf eagerfpu pni pclmulqdq dtes64 monitor ds_cpl vmx est tm2 ssse3 cx16 xtpr pdcm pcid sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes xsave avx f16c rdrand lahf_lm epb tpr_shadow vnmi flexpriority ept vpid fsgsbase smep erms xsaveopt dtherm ida arat pln pts

ในโหมด powersave มันจะทำงานเหมือนกัน ถ้าฉันตัดการเชื่อมต่อไฟ AC และใช้งานแบตเตอรีความถี่ซีพียูจะสูงถึง 2800 MHz ดังนั้นดูเหมือนว่าจะมีปัญหาเฉพาะกับไฟ AC เท่านั้น (ซึ่งค่อนข้างตรงข้ามกับที่ควรจะทำ)

ฉันพยายามตั้งค่าการเปลี่ยนแปลงโปรไฟล์ CPU ฉันพยายามปิดใช้งานการกำหนดความถี่ ( ฉันจะปิดใช้งานการปรับขนาดความถี่ CPU และตั้งค่าระบบเป็นประสิทธิภาพได้อย่างไร ) ฉันพยายามตั้งค่า scaling_min_freq ใน / sys / อุปกรณ์ / system / cpu / cpu [0-3] / cpufreq เป็นค่าที่สูงกว่า แต่ก็ไม่ได้ทำอะไรเลย ความถี่ยังคงน้อยที่สุด

ประเภท CPU คือ Intel (R) Core (TM) i7-3537U CPU @ 2.00GHz, คอมพิวเตอร์คือ Dell Inspiron 15z Touch

ฉันยังมีปัญหากับแบตเตอรี่ที่ไม่ได้ชาร์จแม้ว่าคอมพิวเตอร์จะได้รับอาหารจากอะแดปเตอร์ AC

การวินิจฉัยเพิ่มเติม:

$ sudo rdmsr --bitfield 15:8 -d -a 0x198
8
8
8
8
$ sudo rdmsr --bitfield 15:8 -d -a 0x199
9
8
9
9

ในกรณีที่มีขนาด 0x199 หมายเลข 8 และ 9 จะถูกสุ่มเลือกระหว่างการโทรติดต่อกัน


เมื่อไม่นานมานี้มีรายงานที่คล้ายกันเล็กน้อยและบ่อยครั้งสำหรับรุ่น CPU 58 hmmm ... คอมพิวเตอร์ของคุณยี่ห้ออะไร ดูสิ่งนี้ที่บางสิ่งภายนอกตัวขับความถี่ intel_pstate CPU ถือความถี่ต่ำ ในขณะที่การเน้นหนัก CPU ของคุณเป็นที่โหลด 100% คุณสามารถดู sudo rdmsr --bitfield 15:8 -d -a 0x198และsudo rdmsr --bitfield 15:8 -d -a 0x199และเพิ่มการส่งออกกับคำถามของคุณ หมายเหตุrdmsrให้บริการโดยแพคเกจmsr-toolsและต้องใช้โมดูล MSR sudo modprobe msrที่จะโหลดครั้งแรกผ่านทาง
Doug Smythies

โปรดใช้ผู้ว่าราชการ powersave สำหรับการทดสอบ
Doug Smythies

ฉันได้เพิ่มข้อมูลที่ร้องขอไปยังโพสต์เริ่มต้น ในระยะสั้นคอมพิวเตอร์ของฉันคือ Dell Inspiron 15z Touch ดูเหมือนว่าจะเป็นตัวอย่างของ Bug 118751 (เพราะปัญหาหายไปเมื่อใช้แบตเตอรี่) การใช้ผู้ว่าราชการ powersave ไม่มีอะไรเปลี่ยนแปลงเลย
Dugi

ฉันสังเกตเห็นว่าเหมือนกับ Marcin Nowak ในการอภิปรายเกี่ยวกับข้อผิดพลาดนั้นแบตเตอรี่ของฉันดูเหมือนว่าจะไม่ได้ชาร์จหรือช้ามาก (แม้ว่าคอมพิวเตอร์จะปิดอยู่) อย่างไรก็ตามไฟ AC ดูเหมือนจะไม่อ่อนแอ แต่อย่างใด
Dugi

คุณต้องการดำเนินการต่อผ่านรายงานข้อผิดพลาดหรือไม่ บางสิ่งภายนอกไดรเวอร์ intel_pstate CPU ถือความถี่ CPU ที่ pstates ต่ำสุด หากคุณบู๊ตโดยใช้ไดรเวอร์ความถี่ซีพียู acpi_cpufreq คุณจะได้cat /sys/devices/system/cpu/cpufreq/policy0/bios_limitอะไร
Doug Smythies

คำตอบ:


12

มันกลับกลายเป็นว่าปัญหานี้ไม่เกี่ยวข้องกับไดรเวอร์ intel_pstate เพราะ acpi_cpufreq ไดรเวอร์อื่นรายงานค่าที่ดีขึ้น แต่ไม่เคยตั้งค่า ระบบปฏิบัติการอาจไม่สามารถควบคุมสิ่งนี้ได้

นี่เป็นปัญหาที่เกิดขึ้นกับแล็ปท็อป Dell บางรุ่นเมื่อการชาร์จขาดในลักษณะที่ว่าแล็ปท็อปใช้พลังงานจาก AC แต่ไม่ได้ชาร์จ การแก้ไขปัญหาฮาร์ดแวร์ลบปัญหา ในกรณีนี้มันเป็นผ้าชิ้นหนึ่งที่มองไม่เห็นในขั้วไฟฟ้าที่ป้องกันไม่ให้หน้าสัมผัสทางไฟฟ้า


1
แต่จะทำอย่างไรถ้าตอนนี้ฉันไม่สามารถเปลี่ยนฮาร์ดแวร์ (ที่ชาร์จ) ได้?
Vedavrat

ฉันจะตรวจสอบตัวเชื่อมต่อมีโอกาสที่จะมีบางอย่างผิดปกติและสามารถแก้ไขได้ด้วยตนเอง ถ้าไม่คุณอาจต้องประสบกับปัญหา (ไม่ร้ายแรง) กับ CPU ช้า นี่เป็นปัญหาฮาร์ดแวร์ที่ไม่เกี่ยวข้องกับระบบปฏิบัติการหรือไดรเวอร์
Dugi

Dell Inspiton ของฉัน 15R N5110 Intel i7-2860QM นั้นกำลังทุบตีถึงจุดนั้นเมื่อมันหยุดชาร์จทำให้ฉันมีความเร็ว 800 MHz ผมเปิด BIOS และผู้พิการและCharger Behavior Adapter Warningsดึงแป้งออกแล้วกลับมาอีกครั้ง นอกจากนี้ใน Windows แต่นำไปสู่โปรไฟล์ประสิทธิภาพสูง และได้รับซีพียูของฉันกลับมาและมี 2500 MHz ดังนั้นจึงเป็นไปได้ที่จะแก้ไขปัญหาโดยไม่ต้องเปลี่ยนใหม่
dzmitry.lahoda

1
ชี้แจงแบตเตอรี่ของคุณไม่ถูกชาร์จ? ดังนั้นถ้าฉันมีปัญหาเช่นเดียวกับ OP แต่แบตเตอรี่ของฉันดูเหมือนว่าจะชาร์จได้ดี (แล็ปท็อปใช้เวลานานหลายชั่วโมงในการใช้แบตเตอรี) แล้วฉันมีปัญหาอื่นหรือไม่
Garrett

1
@Garrett แบตเตอรี่ไม่ถูกชาร์จ หากผู้โจมตีเรียกเก็บเงินก็แสดงว่าไม่ใช่ปัญหานี้ ปัญหาคือ BIOS เข้าสู่สถานการณ์ที่ไม่คาดคิดที่แล็ปท็อปใช้พลังงานจาก AC แต่ไม่ได้ชาร์จแบตเตอรี่
Dugi

3

สิ่งนี้จะตั้งค่า cpu freq ของคุณเป็นความเร็วสูงสุดจากเทอร์มินัลใด ๆ :

sudo cpufreq-set -f `cat /sys/devices/system/cpu/cpu0/cpufreq/scaling_max_freq`

แก้ไขไฟล์ /etc/init.d/ondemand เพื่อเพิ่มอย่างถาวร ondemand ใช้เพื่อแก้ไขความถี่ของคุณในระหว่างการเข้าสู่ระบบ ค่าเริ่มต้นคือผู้ว่าราชการ 'ondemand' กล่าวอีกนัยหนึ่งคุณเริ่มต้นที่ 800mhz และขึ้นไปตามที่ต้องการ


2
มันช่วย. ขอขอบคุณ! แต่เราเพิ่งเปลี่ยนความถี่ของ CPU จากขั้นต่ำ (800 Mhz) เป็นสูงสุด (3200 MHz) และวิธีการตั้งค่าเพื่อปรับ (แปรผัน) ความถี่ CPU ระหว่าง 0.8 ถึง 3.2 GHz ตามความจำเป็นในการโหลดโปรด? ขอขอบคุณ.
Vedavrat

2

ฉันมีปัญหาเดียวกัน - freq cpu ติดอยู่ใน Ubuntu และ windows หลังจากที่ปิดเครื่องร้อนเกินไปในกระเป๋าพกพาขณะที่แล็ปท็อปยังคงเปิดอยู่

ฉันไปที่ BIOS และปิดใช้งานการจัดการพลังงาน cpu ใน "พลังงาน" และทำให้ทุกอย่างเต็มประสิทธิภาพ (ประสิทธิภาพสูงสุด) รีบูตกลับไปที่ความเร็วสูงสุดจากนั้นกลับสู่ BIOS และเปิดใช้งานการจัดการ cpu อีกครั้งและแก้ไขการตั้งค่าอื่น ๆ ที่ฉันเปลี่ยนไปก่อนหน้านี้ และอื่น ๆ !

แก้ไข:ปรากฎว่าเป็นปัญหาแบตเตอรี่ หากแบตเตอรี่เหลือน้อยจริงๆ cpu จะไม่เร่งความเร็ว (ฉันถือว่าประหยัดพลังงาน) บน thinkpad ของฉันฉันต้องชาร์จแบตเตอรี่เป็นเวลาหลายนาทีจนกระทั่ง LED การชาร์จหยุดกะพริบเร็วก่อนที่ฉันจะเปิดเครื่องอีกครั้ง


ฉันทำเช่นเดียวกันกับ XPS 15 ของฉันแม้ว่าฉันจะไม่เปิดใช้งานการจัดการพลังงานอีกครั้ง นับตั้งแต่มันทำงานได้เร็วและคงที่ (แบตเตอรี่ในขณะนี้เป็นบิตที่ได้รับผลกระทบ แต่นั่นไม่ใช่สิ่งสำคัญมากเกินไปสำหรับฉัน)
pandaadb

2

บางครั้งแล็ปท็อปของฉันเพิกเฉยต่อการตั้งค่า cpufreq อย่างสมบูรณ์ ฉันพบว่างานนี้:

ถอดสายไฟและเสียบกลับเข้าไปใหม่อีกครั้ง แก้ไขแล้ว :)

ฉันเดาว่าสาเหตุที่ทำให้เครื่องเกิดความสับสน: มันคิดว่ามันใช้พลังงานจากแบตเตอรี่และคิดว่าแบตเตอรี่ต่ำดังนั้นมันจึงทำให้ซีพียูนั้นประหยัดพลังงาน

เราเพียงแค่ต้องแจ้งให้ทราบว่ามีการเสียบปลั๊กจริงและทำได้ดี

(Asus x453m แล็ปท็อปที่นี่ Ubuntu 14.04) YouTube: คุณลองปิดและเปิดใหม่อีกครั้งหรือไม่?


ว้าวนี่มันใช้งานได้สำหรับฉัน!
ทิม

0

ฉันมีปัญหาเดียวกันกับ ThinkPad T520 ของฉัน หลังจากลองวิธีแก้ปัญหาทั้งหมดที่พบในอินเทอร์เน็ตฉันก็พร้อมที่จะติดตั้ง Ubuntu อีกครั้ง แต่จากนั้นฉันได้ตรวจสอบความถี่ของ CPU ใน Windows และพบว่ามัน จำกัด ที่ 800 MHz ด้วย

ดังนั้นจึงดูเหมือนว่าปัญหาฮาร์ดแวร์ ไม่ชัดเจนว่ามีปัญหาเกี่ยวกับการระบายความร้อนของ CPU เนื่องจาก RPM ที่เย็นกว่าต่ำและเคสแล็ปท็อปไม่ร้อนหรืออบอุ่น

เนื่องจากไม่มีตัวเลือกอื่นอยู่แล้วฉันจึงถอดแล็ปท็อปออกและเปลี่ยนส่วนต่อประสานการระบายความร้อนในชิป CPU และ GPU และคุณรู้อะไรไหม มันช่วยได้!

การทดสอบหน่วยในหนึ่งในเวลาดำเนินการโครงการ Django ของฉันคือ 45 นาทีตอนนี้เป็น 11 นาที

ดังนั้นหากคุณต้องเผชิญกับปัญหาที่คล้ายกันโดยเฉพาะอย่างยิ่งในแล็ปท็อปอาจเป็นเพราะส่วนต่อประสานความร้อนแบบแห้งหลังจากผ่านไป 3-5 ปีก็มักจะหยุดทำงาน และอย่าหลงกลโดยหม้อน้ำที่สะอาดตัวทำความเย็นที่เงียบและตัวแล็ปท็อปที่ยอดเยี่ยม


0

วิธีแก้ปัญหา

# Determinate CPU capabilities
MAX_CPU=$(cpupower frequency-info -l | tail -n1 | cut -d' ' -f2)

# Disable "BD PROCHOT" 
wrmsr -a 0x1FC 262238;

# Set and apply frequencies
cpupower frequency-set \
  -d $(expr $MAX_CPU / 2) \
  -u $MAX_CPU \
  -r \
  -g performance; 

0

บางครั้งมันไม่เพียง แต่เกี่ยวกับการตั้งค่าตัวปรับ บางครั้งนโยบายการกำหนดจะถูกตั้งค่าเป็นระหว่าง MIN_FREQ และ MIN_FREQ ฉันต้องเขียนสคริปต์เพื่อกำหนดทุกสิ่งให้ตรงในคราวเดียว:

#!/bin/bash
echo "Setting all CPUs to " "$@"
CPUINFO_MIN_FREQ=$(cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_min_freq)
CPUINFO_MAX_FREQ=$(cat /sys/devices/system/cpu/cpu0/cpufreq/cpuinfo_max_freq)
MIN=$(echo "scale=1; $CPUINFO_MIN_FREQ / 1000000" | bc)"G"
MAX=$(echo "scale=1; $CPUINFO_MAX_FREQ / 1000000" | bc)"G"

echo "Minimum frequency: " $MIN ", Maximum frequency: " $MAX

GOVERNOR=@0
if [ $# -eq 0 ]
    then
        echo "No arguments supplied, using ONDEMAND governor"
        GOVERNOR="ondemand"
    else
        echo "Governor " $1 " supplied"
        GOVERNOR=$1
fi

for ((i=0;i<$(nproc);i++));
    do cpufreq-set -c $i -r -g $GOVERNOR  --min $MIN --max $MAX;
done
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.