ใช้ Sysinternals 'Process Explorer มีคอลัมน์ที่สามารถใช้เพื่อระบุ CPU ที่กระบวนการกำลังทำงานอยู่หรือไม่? ถ้าไม่มีคอลัมน์มีวิธีอื่นอีกไหม?
ใช้ Sysinternals 'Process Explorer มีคอลัมน์ที่สามารถใช้เพื่อระบุ CPU ที่กระบวนการกำลังทำงานอยู่หรือไม่? ถ้าไม่มีคอลัมน์มีวิธีอื่นอีกไหม?
คำตอบ:
ขอในปี 2005 :
ฉันประทับใจมากกับฟีเจอร์ที่รวมอยู่ใน Process Explorer แต่ต้องการเห็นตัวเลือกในการแสดงความสัมพันธ์ซีพียูแต่ละกระบวนการในหน้าต่างหลักเป็นคอลัมน์สลับ
ไม่มีการตอบสนอง
ร้องขอในปี 2007 :
ขอบคุณสำหรับสุดยอดยูทิลิตี้ คำขอของฉันคือการเพิ่มตัวเลือกคอลัมน์เพื่อประมวลผล explorer เพื่อแสดงความสัมพันธ์ของ CPU แค่นั้นแหละ.
ไม่มีการตอบสนอง
ที่คล้ายกันที่กล่าวถึงในปี 2013 :
มันจะดีจริงๆถ้ามีคอลัมน์มุมมองประสิทธิภาพกระบวนการใหม่ที่เรียกว่าการใช้งานหลักที่จะแสดงผลรวมของการใช้งานผ่านแกนหลักที่กระบวนการทำงานอยู่
เรื่องย่อพื้นฐาน: ไม่สามารถทำได้
เธรดคือสิ่งที่ถูกส่งไปยังแกนประมวลผลไม่ใช่กระบวนการ กระบวนการที่ทันสมัยส่วนใหญ่มีหลายเธรด
หากคุณตั้งค่าความสัมพันธ์สำหรับกระบวนการด้วยตนเองดังนั้นเธรดทั้งหมดสำหรับกระบวนการควรติดกับโปรเซสเซอร์เดียว เมื่อคุณตั้งค่าด้วยตนเองคุณควรทราบว่า CPU นั้นเปิดอยู่ ;)
แต่ถ้าคุณไม่ได้ระบุเธรดจะถูกควบคุมโดยระบบปฏิบัติการและฮาร์ดแวร์ในการประมวลผลและจะข้ามไปมาระหว่างโปรเซสเซอร์ด้วยความเร็วที่จะไม่สามารถตรวจจับได้และมีความคลาดเคลื่อนในเวลาที่แสดง คุณ.
บางทีลองดูคำถามเกี่ยวกับ SU เหล่านี้ดูเพิ่มเติม:
นอกจากนี้จาก StackOverflow:
ตอนนี้ถ้าคุณเขียนโปรแกรมคุณสามารถใช้GetCurrentProcessorNumberซึ่งรายงานตัวประมวลผลปัจจุบันที่ใช้โดยเธรดที่เรียกใช้ฟังก์ชัน
การใช้สิ่งนี้จะช่วยให้คุณทำการประเมินเกี่ยวกับการใช้งานตัวประมวลผลโดยเธรดของคุณเนื่องจากคุณไม่สามารถแน่ใจได้ว่าเธรดนั้นจะอยู่ที่ใดรอบหนึ่งในรอบถัดไป (อีกครั้งเว้นแต่คุณจะตั้งค่าความสัมพันธ์ตามวัตถุประสงค์)
ข้อมูลเพิ่มเติม:
สิ่งนี้สามารถทำได้โดยการจับร่องรอย xperf และเปิดด้วยWindows Performance Analyzer (WPA.exe) จาก Windows Performance Toolkit ที่นี่คุณสามารถเพิ่มคอลัมน์ CPU เพื่อดูว่า CPU (Core) ใดที่กระบวนการกำลังทำงานอยู่: