Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การแก้ไขปัญหา >> ข้อผิดพลาด Windows

แก้ไข: Deferred Procedure Calls และ Interrupts Service Routines ใช้ CPU และ Disk สูงบน Windows 10

กระบวนการนี้ปรากฏในแท็บ Processes ของ Task Manager ปัญหาเกิดเมื่อ entry นี้ (หรือหลาย entry ตามรายงาน) ใช้ CPU สูงมาก

แก้ไข: Deferred Procedure Calls และ Interrupts Service Routines ใช้ CPU และ Disk สูงบน Windows 10

Deferred Procedure Call (DPC) เป็นกลไกของ Windows ที่อนุญาตให้งาน優先權สูง (เช่น interrupt handler) เลื่อนงานที่มีความสำคัญน้อยกว่าไปทำทีหลัง อาจผิดปกติและกินทรัพยากร CPU ทำตามวิธีแก้ด้านล่างเพื่อคืนทรัพยากร CPU

วิธีที่ 1: ติดตั้งใหม่หรืออัปเดต Network Adapter

ถ้าไดรเวอร์อุปกรณ์เครือข่ายที่ทำให้เกิด error ทำให้กระบวนการ "Deferred Procedure Calls and Interrupts Service Routines" ใช้ CPU สูง สามารถแก้ได้โดยอัปเดตหรือติดตั้งใหม่ไดรเวอร์ ขึ้นอยู่กับประเภทอินเทอร์เน็ตที่ใช้ รีสตาร์ทจะทำให้ระบบค้นหาและติดตั้งไดรเวอร์ล่าสุดอัตโนมัติ

  1. ถอนการติดตั้งไดรเวอร์ปัจจุบันก่อน
  2. พิมพ์ "Device Manager" ในช่องค้นหาข้าง Start หรือ Win+R > "devmgmt.msc" > OK/Enter

แก้ไข: Deferred Procedure Calls และ Interrupts Service Routines ใช้ CPU และ Disk สูงบน Windows 10

  1. ขยาย "Network Adapters" จะแสดง adapter ทั้งหมด คลิกขวา adapter ที่ต้องการถอน > "Uninstall device" เลือกตัวที่ตรงกับการเชื่อมต่อที่ใช้งานอยู่ (Wi-Fi หรือ Ethernet)
  2. คลิก "OK" ยืนยันถอน

แก้ไข: Deferred Procedure Calls และ Interrupts Service Routines ใช้ CPU และ Disk สูงบน Windows 10

  1. ถอด adapter ออกจากเครื่อง รีสตาร์ททันที หลังบูท ไดรเวอร์ใหม่ควรติดตั้งอัตโนมัติ ถ้าอินเทอร์เน็ตไม่ได้ ให้ติดตั้งไดรเวอร์เอง
  2. ไปที่เว็บผู้ผลิต ดูไดรเวอร์สำหรับ OS เลือกเวอร์ชันล่าสุด ดาวน์โหลด รันจากโฟลเดอร์ Downloads

แก้ไข: Deferred Procedure Calls และ Interrupts Service Routines ใช้ CPU และ Disk สูงบน Windows 10

  1. ติดตามคำแนะนำติดตั้ง ทิ้ง adapter ไว้ข้างนอกจนกว่าจะแจ้งให้ต่อ (อาจมี อาจไม่มี) รีสตาร์ทหลังติดตั้งเสร็จ ต่อ adapter กลับ ตรวจสอบ CPU usage กลับสู่ปกติหรือไม่

หมายเหตุ: แนะนำทำซ้ำกับไดรเวอร์การ์ดจอ (สำคัญที่สุด) เพราะหลายคนแก้ได้หลังอัปเดต กระทำขั้นตอนเดียวกัน แต่หาใน Display adapters ใน Device Manager

วิธีที่ 2: ปิด Sound Enhancements และ Special Effects ทั้งหมด

วิธีนี้ได้รับแนะนำในฟอรัมและบล็อกของผู้ใช้ที่เผชิญปัญหานี้หลายวัน บางคอมพิวเตอร์ได้รับผลกระทบจาก audio enhancement ใน Windows ควรปิดเพื่อให้ CPU กลับสู่ปกติ

  1. คลิกขวาไอคอนเสียง (มุมขวาล่าง) > Playback devices หรือ Control Panel > View by: Large icons > Sounds

แก้ไข: Deferred Procedure Calls และ Interrupts Service Routines ใช้ CPU และ Disk สูงบน Windows 10

  1. อยู่ที่แท็บ Playback เลือกอุปกรณ์เล่นเสียงหลัก (Speakers)
  2. คลิกขวา > Properties > แท็บ Enhancements > คลิกถูก Disable all sound effects ใช้การเปลี่ยนแปลง รีสตาร์ท ตรวจสอบ CPU usage

แก้ไข: Deferred Procedure Calls และ Interrupts Service Routines ใช้ CPU และ Disk สูงบน Windows 10

วิธีที่ 3: ใช้เครื่องมือเฉพาะเพื่อระบุสาเหตุจริง

วิธีนี้ช่วยระบุสาเหตุได้แม่นยำ เพราะยากที่จะรู้ว่าอุปกรณ์ ไดรเวอร์ หรือโปรแกรมไหนทำให้ CPU สูง ต้องติดตั้งเครื่องมือ กระบวนการอาจนาน แต่สำคัญต้องตั้งใจ เพราะอาจเป็นขั้นตอนสุดท้ายในการแก้ปัญหา

  1. ดาวน์โหลด Windows SDK (มี Windows Performance Kit ที่มีเครื่องมือที่ต้องการ) สำหรับ Windows 10 ดาวน์โหลดได้ที่ลิงก์นี้

แก้ไข: Deferred Procedure Calls และ Interrupts Service Routines ใช้ CPU และ Disk สูงบน Windows 10

  1. หาไฟล์ในโฟลเดอร์ Downloads รัน Setup เลือก WPT (Windows Performance Tools) > Install รีสตาร์ท
  2. Windows 10: ค้นหา Command Prompt ใน Start/Search > คลิกขวา > Run as administrator

แก้ไข: Deferred Procedure Calls และ Interrupts Service Routines ใช้ CPU และ Disk สูงบน Windows 10

  1. ใน Command Prompt พิมพ์คำสั่งไปที่ Temp folder (กด Enter):
cd \temp
  1. พิมพ์คำสั่งเริ่มวิเคราะห์ รอจนเห็น DPC/Interrupt สูงใน Task Manager:
xperf -on latency -stackwalk profile
  1. เมื่อเห็น CPU สูง หยุด trace ด้วยคำสั่ง:
xperf -d DPC_Interrupt.etl
  1. จะปิดกระบวนการและเขียนผลลัพธ์ใน DPC_Interrupt.etl คลิก Start > Run > พิมพ์ "%temp%" > OK เปิดโฟลเดอร์ Temporary files

แก้ไข: Deferred Procedure Calls และ Interrupts Service Routines ใช้ CPU และ Disk สูงบน Windows 10

  1. หา DPC_Interrupt.etl คลิกสองครั้ง รอ 2 passes เสร็จ > Trace >> Configure Symbol Paths > พิมพ์:
srv*C:\symbols*https://msdl.microsoft.com/download/symbols
  1. ไปที่กราฟ "DPC CPU Usage" หรือ "Interrupt CPU Usage" (ขึ้นอยู่กับที่ CPU สูง) เลือกช่วงเวลา คลิกขวา > Load Symbols > Summary table อาจต้องยอมรับ license เพื่อดาวน์โหลด debugging symbols รอสักครู่
  2. จะเห็น summary ของ calls และสาเหตุปัญหา อาจเป็นไดรเวอร์ โปรแกรม เซอร์วิส ฯลฯ Google ชื่อไฟล์ที่เป็นสาเหตุ ดูว่าเป็นของอะไร ระบุจุดแข็ง

วิธีที่ 4: Troubleshoot ด้วย Clean Boot

ถ้าแอปหรือ service ของบุคคลที่สาม ทำให้ System Interrupts บ่อย ให้ระบุและปิด/ถอนติดตั้ง ผู้ใช้รายงานว่า Clean Boot ไม่เจอปัญหา ลองดูเอง

ถ้า Clean Boot จริงๆ แล้วไม่เจอปัญหา ให้เปิด services และ startup items ทีละตัว แล้วกำจัดทีละตัว

  1. Win+R > พิมพ์ 'MSCONFIG' > OK
  2. แท็บ Boot > ยกเลิกถูก 'Safe Boot'

แก้ไข: Deferred Procedure Calls และ Interrupts Service Routines ใช้ CPU และ Disk สูงบน Windows 10

  1. แท็บ General > เลือก Selective startup > ยกเลิกถูก Load startup items
  2. แท็บ Services > คลิกถูก Hide all Microsoft services > Disable all

แก้ไข: Deferred Procedure Calls และ Interrupts Service Routines ใช้ CPU และ Disk สูงบน Windows 10

  1. แท็บ Startup > Open Task Manager > ใน Task Manager แท็บ Startup คลิกขวาแต่ละรายการที่ Enabled > Disable (อย่าข้ามรายการไหน แอปที่ดูถูกต้องก็อาจก่อให้เกิด conflict)
  2. ต่อไปต้องทำกระบวนการน่าเบื่อ: เปิด Startup items ทีละตัว รีสตาร์ท ตรวจสอบ error ซ้ำ ทำซ้ำกับ Services ที่ปิดในขั้นตอน 4 เมื่อเจอรายการที่ทำให้เกิดปัญหา ให้ดำเนินการแก้: ถ้าเป็นโปรแกรม ให้ติดตั้งใหม่/ซ่อม ถ้าเป็น service ให้ปิด ฯลฯ