Score:1

การใช้พลังงานของแพ็คเกจ CPU เชื่อมต่อกับ nVidia GPU P-state ซึ่งทำให้ CPU เร่งความเร็วระหว่างการโหลด

ธง au

ซีพียู: 7700HQ จีพียู: GTX1050

ฉันใช้ Prime95 เพื่อเน้น CPU (โดยใช้ AVX2) มันเสถียรที่ 3.0GHz@45W หลังจากนั้นไม่กี่นาที เป็นผลลัพธ์ที่คาดหวังจึงไม่มีอะไรใหม่ที่นี่

หลังจากนั้นฉันติดตั้งไดรเวอร์ nVidia (470.x) ในแผงควบคุม nVidia ฉันเลือกใช้ โหมดประสิทธิภาพ (เฉพาะ nVidia GPU) ฉันคิดว่าสิ่งนี้จะทำให้ซีพียูว่างมากขึ้นและความเร็วสัญญาณนาฬิกาควรเท่ากับหรือสูงกว่าที่วัดได้ในตอนแรกเป็นอย่างน้อย ฉันทำการทดสอบความเครียดอีกครั้งและด้วยความประหลาดใจอย่างมากที่ CPU มีความเสถียรที่ 2.7GHz@45W หลังจากนั้นไม่กี่นาที

ฉันยืนยันผลลัพธ์โดยทำการทดสอบหลายครั้ง นั่นเป็นเหตุผลที่ฉันตัดสินใจเปลี่ยนกลับไปเป็น GPU ในตัว. หลังจากรีสตาร์ททุกอย่างก็เหมือนเดิม จากนั้นฉันก็พยายาม โหมดสมดุล (nVidia GPU ตามความต้องการเท่านั้น) ในกรณีนี้ผลลัพธ์เหมือนกันกับ โหมดประสิทธิภาพ.

ฉันทำการทดสอบอีกหลายครั้งโดยสลับ GPUs/X11<->Wayland แต่ผลลัพธ์ก็ยังเหมือนเดิมเสมอ ด้วย GPU ในตัว CPU ทำงานที่ 3.0GHz/~87 องศา@45W ด้วย nVidia - 2.7GHz/~82 องศา@45W

ใครบ้างมีข้อเสนอแนะ а หรือฉันไม่มีการตั้งค่าเคอร์เนลบางอย่าง?

ขอบคุณ :)

อัปเดต:

กรณีนี้น่าสนใจยิ่งขึ้น ทั้งหมดที่กล่าวมาเป็นความจริง คาดหวังสิ่งหนึ่ง - ระบบปฏิบัติการ หลังจากการทดสอบหลายครั้ง ฉันสรุปว่าสถานการณ์เหมือนกันทั้งบน Windows และ Linux

เรามาเน้นที่การใช้พลังงานของแพ็คเกจที่ไม่ได้ใช้งาน (IPPC) ของ CPU

  1. การใช้โหมด "ประหยัดพลังงาน" ใน Prime ส่งผลให้ใช้เฉพาะ iGPU และปิด nVidia โดยสิ้นเชิง ในกรณีนี้ IPPC คือ <2.5W
  2. การใช้โหมด "nVidia on demand" ใน Prime จะส่งผลให้ใช้ iGPU เว้นแต่จะได้เลือก nVidia ไว้อย่างชัดเจน ในกรณีนี้ GPU ทั้งสองจะทำงานอยู่เสมอ ไม่ว่าจะใช้ nVidia จริงกี่กระบวนการ - มันก็ทำงานอยู่เสมอ! ในกรณีนี้ IPPC คือ ~5-12W
  3. การใช้โหมด "ประสิทธิภาพ" ใน Prime ส่งผลให้ใช้ GPU nVidia เท่านั้น มันใช้งานได้เสมอ ในกรณีนี้ IPPC คือ ~5-12W

ต่อมาฉันพยายามค้นหาว่าทำไม IPPC จึงอยู่ในช่วงกว้างมาก - ตั้งแต่ 5 ถึง 12W และเชื่อมต่อกับ GPU อย่างไร โชคดีที่ฉันพบมัน คำตอบอยู่ในสถานะพลังงานของ GPU (P-state) เมื่อ GPU ใช้ P0 (ประสิทธิภาพสูงสุด) IPPC จะเป็น 5W ในกรณีอื่น ๆ IPPC นั้นมากกว่า (สูงสุด 12W) ฟังดูค่อนข้างสวนทางกับสัญชาตญาณ แต่.. กลับกลายเป็นเรื่องจริง ยิ่ง GPU ทำงานได้เร็วเท่าใด ก็ยิ่งส่งผลกระทบต่อ CPU น้อยลง ดังนั้นการใช้พลังงานของแพ็คเกจ CPU จะลดลง และในทางกลับกัน ยิ่ง GPU ทำงานช้าลง พลังงานของ CPU ก็จะยิ่งหมดลง

ตอนนี้ไปที่ Windows กันเถอะ มีโหมด GPU เพียงโหมดเดียว - "ตามต้องการ" ข้อแตกต่างกับ Linux คือบน Windows เมื่อไม่มีแอปใดใช้ GPU nVidia แอปจะปิด ส่งผลให้ IPPC <2.5W หากแอปใดเริ่มใช้ nVidia GPU ดังนั้น IPPC จะสูงถึง 12W ดังนั้นบน Windows ตรรกะจะเหมือนกับ Linux คือยิ่ง GPU ทำงานเร็วขึ้น พลังงานแพ็คเกจของ CPU ก็จะยิ่งต่ำลง

หมายเหตุ: ฉันตรวจสอบการใช้พลังงานบน Windows เมื่อไม่ได้ใช้งาน พลังของ Core/IA/GX เกือบเป็น 0 ในขณะที่แพ็คเกจอยู่ที่ 5-12W เมื่อเปิดใช้งาน nVidia

จากการค้นพบทั้งหมด ปัญหานี้ไม่เกี่ยวข้องกับ OS/GPU อย่างไรก็ตาม การเปิด dGPU (ไม่ว่าจะใช้งานในลักษณะใด) ทำให้เกิดการใช้พลังงานของแพ็คเกจ CPU สูง (ซึ่งจะทำให้ความถี่ลดลงเมื่อโหลด CPU)เหตุผลคืออะไร? มีบางอย่างผิดปกติกับไดรเวอร์ nVidia สำหรับทั้ง Windows/Linux หรือไม่ มีส่วนประกอบ CPU เฉพาะบางอย่างที่เปิดใช้งานเมื่อ dGPU ทำงานหรือไม่

Doug Smythies avatar
gn flag
"AVX2" คืออะไร? แนะนำตัวเลือก/การทดสอบการทรมาน (15) - FFT ขนาดเล็ก (2)แนะนำให้ใช้ turbostat ในเวลาเดียวกัน แนะนำสิ่งนี้: `sudo turbostat --Summary --quiet --show Busy%,Bzy_MHz,IRQ,PkgWatt,PkgTmp,RAMWatt,GFXWatt --interval 6` การบริโภคพลังงานเปลี่ยนไปหรือไม่?
au flag
ขอบคุณมาก. ฉันมีรายละเอียดเพิ่มเติมเล็กน้อยในขณะนี้ ใช้ GPU ภายใน: PkgWatt: 45W, CorWatt: 42.5W ใช้ nVidia: PkgWatt: 45W, CorWatt: 32W ดังนั้นบางสิ่งจึงใช้พลังงานมากในขณะที่เปิดใช้งาน nVidia
au flag
Idle PkgWatt ก็แตกต่างกันเช่นกัน GPU ในตัว: ~2.5W, nVidia: ~5 ถึง 12W CorWatt เท่ากัน: 0.5W
Doug Smythies avatar
gn flag
น่าสนใจมาก. คอมพิวเตอร์ของฉัน (เซิร์ฟเวอร์) สำหรับการอ้างอิง: Idle" PkgWatt: 1.4; CorWatt: 0.7. Load: PkgWatt: 134.2; CorWatt: 133.6
au flag
ฉันตรวจสอบเอาต์พุตของ Intel SoCWatch และ powertop ฉันไม่พบสิ่งที่น่าสนใจ เมื่อไม่ได้ใช้งาน การใช้พลังงาน Pkg จะอยู่ระหว่าง 5 ถึง 12W เมื่อเปิดใช้งาน nVidia
Score:0
ธง cw

คุณจะต้องใช้ bios mod พร้อมปลดล็อค tdp

ตัวอย่าง https://www.bios-mods.com/forum/Thread-Request-ASUS-GL502VMZ-Unlocked-Bios

สิ่งเดียวกันสำหรับซีพียูรุ่นใหม่ https://linustechtips.com/topic/1070432-for-asus-fx504gm-25w-power-limit-throttling-users-only/

ขึ้นอยู่กับผู้ผลิตแล็ปท็อป อาจมีแท็บ bios ซ่อนอยู่ แต่คุณไม่ต้องการจริงๆ - bios tdp Unlock จะทำ https://www.reddit.com/r/MSILaptops/comments/g4z52k/overclocking_i77700hq_is_possible/

ปรับปรุง เพิ่มวิธีแก้ปัญหาบางอย่างเพื่อลดการใช้พลังงานหรือเพิ่มประสิทธิภาพของซีพียู

การจัดการพลังงานแบบไดนามิกบน Intel และ Pascal เจนเนอเรชั่น 7 ยังไม่รองรับ (ใน 470) https://forums.developer.nvidia.com/t/pascal-d3-power-management/181570/4

แล็ปท็อปบางเครื่องยังเบื่อแม้จะใช้ชิปรุ่นใหม่ก็ตาม https://forums.developer.nvidia.com/t/xorg-still-in-gpu-with-prime-offload-and-dynamic-power-management/170485/10

เหมือนกันสำหรับหน้าต่าง http://forum.notebookreview.com/threads/the-throttlestop-guide.531329/page-965#post-10853895

Fyi คุณอาจต้องการให้ Prime Render Offload สำหรับเกม Wayland ไม่ใช่เพราะ fps ที่สูงกว่า ดังนั้นคุณจึงติดอยู่กับการรันแบบไฮบริด หรือปิดใช้งาน nvidia GPU (และไม่มีการถ่ายข้อมูล) เมื่อไม่จำเป็น เนื่องจากคุณไม่มีการจัดการพลังงานเมื่อเปิดใช้งาน dgpu คุณสามารถใช้ optimus-manager สำหรับสิ่งนั้น

คุณสามารถปลดล็อค bios ของคุณเพื่อให้ cpu ใช้พลังงานมากขึ้นเพื่อชดเชย fps ที่ลดลงซึ่งเกิดจากการดึงพลังงานที่ไม่ได้คอร์โดยไม่จำเป็น

คุณสามารถ undervolt ซีพียูของคุณเล็กน้อยด้วย linux intel-undervolt-gui และตรวจสอบด้วยการควบคุมปริมาณ https://github.com/lukechadwick/linux-intel-undervolt-gui

สำหรับเวลาแบตเตอรี่ที่นานขึ้น (เมื่อปิดใช้งาน dpu) คุณสามารถใช้ tlp gui แทนการควบคุมพลังงานในตัว 21 ของ ubuntu ใช้ยูทิลิตี้ควบคุมพลังงานครั้งละหนึ่งรายการเท่านั้น แพ็คเกจ TLP พร้อมการตั้งค่าโหมดพลังงานใน Ubuntu 21.04?

au flag
เหตุใดฉันจึงต้องใช้ bios mod ฉันไม่ต้องการโอเวอร์คล็อกอะไร
userL avatar
cw flag
เนื่องจากขีดจำกัดพลังงานของซีพียูกำหนดโดยผู้ผลิตภายในไบออส แล็ปท็อปบางรุ่นสร้างด้วยการระบายความร้อนของ cpu vrm ที่แย่กว่าหรือใช้อะแดปเตอร์ ac ที่จ่ายไฟต่ำกว่าซึ่งไม่สามารถรองรับการโหลดสูงสุดพร้อมกันจาก cpu และ gpu คุณสามารถตรวจสอบได้ด้วย Throttlestop - เรียกใช้การทดสอบ cpu และตรวจสอบการใช้พลังงาน จากนั้นเรียกใช้โปรแกรม 3 มิติใดๆ ที่ใช้ GPU การใช้พลังงานของ CPU จะลดลงทันที และ Throttlestop จะแสดง "พลังงาน" เป็นเหตุผลในการจำกัด
au flag
กรณีนี้ไม่ได้. ฉันไม่มีปัญหากับ MAX TDP ฉันมีปัญหากับ Idle TDP
userL avatar
cw flag
บน pascal หากคุณใช้ nvidia prime (สำหรับกราฟิกไฮบริด) หรือ Prime offload (สำหรับ wayland) dgpu จะไม่ตัดการเชื่อมต่อและจะดึงพลังงาน การใช้พลังงาน cpu uncore จะสูงขึ้นเมื่อ dgpu ทำงานอยู่และไม่เข้าสู่โหมดสลีป ปาสคาลจะไม่เข้าสู่โหมดสลีปเนื่องจากการจัดการพลังงานที่ไม่ได้มาตรฐาน มันใช้งานได้บน windows แต่สำหรับบางรุ่นก็ใช้งานไม่ได้เช่นกัน https://download.nvidia.com/XFree86/Linux-x86_64/440.59/README/dynamicpowermanagement.html -> คุณสมบัตินี้ต้องใช้ Turing หรือ GPU ที่ใหม่กว่า https://www.reddit.com/r/linux_gaming/comments/dy0zcb/do_the_nvidia_drivers_with_prime_offload_have_d3/f7xxuok/
au flag
หากสามารถทำงานบน Windows ได้ ก็เป็นไปไม่ได้ที่จะทำงานแบบเดียวกับบน Linux นอกจากนี้ คุณรู้หรือไม่ว่าเหตุใดการใช้พลังงาน cpu uncore จึงสูงกว่าเมื่อ dgpu ทำงานที่ความถี่ต่ำ เมื่อเทียบกับการใช้พลังงาน cpu uncore เมื่อ gdpu ทำงานที่ความถี่สูงกว่า
userL avatar
cw flag
เป็นไปได้ แต่ optimus manager จำเป็นต้องรู้ว่าต้องเข้าถึงค่า acpi ใด หากไม่เปิดเผย platform(uefi) แสดงว่ามีการใช้คำสั่งไดรเวอร์พิเศษและ 470 ยังคงไม่ใช้งาน ให้ถาม nvidia https://www.reddit.com/r/linux_gaming/comments/dy0zcb/do_the_nvidia_drivers_with_prime_offload_have_d3/f802pwu เกี่ยวกับ uncore - ฉันไม่รู้

โพสต์คำตอบ

คนส่วนใหญ่ไม่เข้าใจว่าการถามคำถามมากมายจะปลดล็อกการเรียนรู้และปรับปรุงความสัมพันธ์ระหว่างบุคคล ตัวอย่างเช่น ในการศึกษาของ Alison แม้ว่าผู้คนจะจำได้อย่างแม่นยำว่ามีคำถามกี่ข้อที่ถูกถามในการสนทนา แต่พวกเขาไม่เข้าใจความเชื่อมโยงระหว่างคำถามและความชอบ จากการศึกษาทั้ง 4 เรื่องที่ผู้เข้าร่วมมีส่วนร่วมในการสนทนาด้วยตนเองหรืออ่านบันทึกการสนทนาของผู้อื่น ผู้คนมักไม่ตระหนักว่าการถามคำถามจะมีอิทธิพลหรือมีอิทธิพลต่อระดับมิตรภาพระหว่างผู้สนทนา