รับสถิติ CPU ต่อเธรด


10

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

คำตอบ:


8

สำหรับคำตอบอย่างรวดเร็วใช้ sysinternal ของProcess Explorer ดับเบิลคลิกที่กระบวนการเพื่อเปิดกล่องโต้ตอบรายละเอียด แท็บกระทู้ให้รายการเรียงลำดับของกระทู้ทั้งหมดรวมถึงบริบทเปลี่ยนเดลตาและเวลา CPU


ฉันเคยใช้ Process Explorer มาก่อน แต่ไม่เห็นคอลัมน์ CPU อยู่ที่นั่นเพราะมันแคบเกินไปและมีเพียงลูกศรการเรียงลำดับที่มองเห็นได้เป็นส่วนหัวของคอลัมน์
dabest1

7

Perfmon (การตรวจสอบประสิทธิภาพ) ควรให้รายละเอียดที่คุณต้องการ

ต่อไปนี้จะถือว่า Windows 2000, XP หรือ Server 2003 ฉันไม่ได้ตรวจสอบ แต่ฉันคิดว่าการตรวจสอบประสิทธิภาพแตกต่างกันเล็กน้อยใน Vista, Windows 7 & Server 2008

ในการรันการตรวจสอบประสิทธิภาพให้ไปที่เริ่ม> แผงควบคุม> เครื่องมือการดูแลระบบ> ประสิทธิภาพ

ในการเพิ่มกราฟสำหรับแต่ละเธรดของแอปพลิเคชันให้คลิกขวาที่กราฟและเลือกคุณสมบัติ คุณอาจต้องการลบค่าเริ่มต้นใด ๆ ที่มาพร้อมกับกราฟที่สะอาดกว่าให้กับคุณ

คลิกปุ่ม "เพิ่ม ... " และตรวจสอบให้แน่ใจว่าได้เลือก "Use Local Computer Counters" (ยกเว้นกรณีที่คุณต้องการตรวจสอบเซิร์ฟเวอร์อื่นในกรณีนี้ให้เลือกตัวเลือกนั้น)

ภายใต้ "วัตถุประสิทธิภาพ" เลือก "เธรด"

เลือกตัวนับ "% ตัวประมวลผลเวลา" จากนั้นเลือกเธรดทั้งหมดที่คุณต้องการตรวจสอบ (ควบคุม + คลิกเพื่อเลือกหลายรายการ) คลิก "เพิ่ม" แล้วคลิก "ปิด"

กลับมาที่คุณสมบัติคุณสามารถปรับแต่งกราฟตามที่คุณต้องการโดยกำหนดสีรูปแบบและอื่น ๆ คลิกตกลง

คุณอาจต้องเริ่มการสร้างกราฟถ้าคุณทำแล้วคลิกที่ป้าย STOP สีแดงเพื่อที่จะไม่ได้เปิดใช้งานจะเริ่มกราฟ


+1, ยกเว้นความคิดเห็น WMI ในตอนเริ่มต้นเนื่องจากไม่มีอะไรเกี่ยวข้องกับส่วนที่เหลือของโพสต์ สิ่งที่ถูกกล่าวถึงทำงานคล้ายกันกับ Vista และ 2008 เช่นกัน ในที่สุดคุณสามารถเริ่ม Perfmon ได้ด้วยการเรียกใช้ perfmon.msc
DougN

อืมขอโทษฉันผสมคำของฉัน ฉันหมายถึงการพูด perfmon ฉันจะแก้ไขมันตอนนี้
Mark Henderson

1

การตรวจสอบกระบวนการ (sysinternals)

ฉันคิดว่า ProcessMonitor โดย Sysinternals (เพิ่งซื้อโดย Microsoft) อาจทำงานได้

การตรวจสอบกระบวนการเป็นเครื่องมือการตรวจสอบขั้นสูงสำหรับ Windows ที่แสดงระบบไฟล์เรียลไทม์รีจิสทรีและกิจกรรมกระบวนการ / ด้าย มันรวมคุณสมบัติของยูทิลิตี้ Sysinternals ดั้งเดิมสองตัวคือ Filemon และ Regmon และเพิ่มรายการการปรับปรุงมากมายรวมถึงการกรองที่สมบูรณ์และไม่ทำลายคุณสมบัติเหตุการณ์ที่ครอบคลุมเช่น ID เซสชันและชื่อผู้ใช้ข้อมูลกระบวนการที่เชื่อถือได้ สำหรับการดำเนินการแต่ละครั้งการบันทึกไฟล์พร้อมกันและอื่น ๆ อีกมากมาย ฟีเจอร์ที่ทรงพลังที่ไม่เหมือนใครของมันจะทำให้ Process Monitor เป็นยูทิลิตี้หลักในการแก้ไขปัญหาระบบและเครื่องมือล่ามัลแวร์

นี่คือลิงค์:

http://technet.microsoft.com/en-us/sysinternals/bb896645.aspx


ขอบคุณสำหรับคำแนะนำของคุณ คำตอบของคุณถูกต้อง แต่สิ่งที่ช่วยฉันในการค้นหาการใช้ CPU ต่อเธรดใน Process Explorer คือคำตอบที่ฉันเลือกโดย Richard
dabest1

0

คุณสามารถใช้การตรวจสอบประสิทธิภาพ windows inbuilt เพียงพิมพ์ perfmon เมื่อเริ่มต้นเรียกใช้ ครั้งเดียวบน perfmon ให้คลิกที่เครื่องหมายบวกเลือกกระบวนการคุณเลือกกระบวนการของคุณแล้วเลือกสิ่งที่คุณต้องการดู กลับไปสู่พื้นฐาน!

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.