สับสนโดยค่า CPU ในคำสั่ง 'Unix' บนสุด


11

ในภาพหน้าจอด้านล่าง CPU โดยรวมจะถูกรายงานเป็น 3% แต่กระบวนการ mysqld มีการรายงานว่าใช้ 57% นี่คือ 57% ของทั้งหมด 3% และดังนั้น mysqld ใช้ CPU เพียงประมาณ 1.5% เท่านั้นหรือ

ภาพหน้าจอด้านบน http://img.skitch.com/20090620-cih33piwnnrke6aw41y9p1phwr.jpg

อัปเดต : ผู้แสดงความคิดเห็นด้านล่างร้องขอฉันกดปุ่ม '1' และโพสต์ผลลัพธ์: ปุ่ม 1 http://img.skitch.com/20090620-gayja43s44qtw2wkw4aq642e8c.jpg

คำตอบ:


11

57.6% หมายถึง mysqld ใช้. 576 ของซีพียูตัวเดียว ความคลาดเคลื่อนน่าจะเป็นสภาวะการแย่งชิงระหว่างการรวบรวมข้อมูลสำหรับระบบโดยรวมและการรวบรวมข้อมูลต่อกระบวนการ

แก้ไข: ตามการอัปเดตของคุณดูเหมือนว่าคุณมี 16 คอร์

57.5% => .575/16 = .036 = 3.6%.

นั่นคือที่มาของคุณ 3%

หากคุณรวมเปอร์เซ็นต์ว่างทั้งหมดและลบออกจาก 1600% นั่นก็เท่ากับ 57.5%


3

คุณลองกดหมายเลข 1 เมื่อเปิดด้านบนแล้วดูว่าเกิดอะไรขึ้น

แก้ไข:

นายนิรนามพูดได้ดี

ด้านบนจะพูดว่า "ถ้าคุณมีซีพียูหนึ่งคอร์ก็จะว่าง 57.5%"

แต่คุณมี 16 คอร์ ดังนั้นเลข 57 นี้จึงกระจายไปทั่วสถานที่โดย mysqld เป็นแบบมัลติเธรดและทุกอย่าง ...

ชนิดของความสับสน แต่ฉันคิดว่าเป็นเพราะด้านบนจะพบว่ามันยากที่จะแสดงข้อมูลสำหรับแต่ละคอร์ ... ลองนึกภาพบรรทัดข้อมูลชั้นนำที่มี 16 คอร์ขึ้นไป!

นอกจากนี้หากคุณเพิ่มเวลา CPU "% us" ทั้งหมด

1.7+1.0+2.3+1.0+7.4+11.1+15.1+8.7 = 48.3
48.3/16 = 3.01875

นี่คือที่มา 3% มาจาก ...


ทำ; ดูคำถามที่อัปเดต
เทฟลอน

1

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


0

ฉันไม่สามารถบอกได้ว่าด้านบนของคุณกำลังรวมซีพียูหลายตัวที่คุณมีอยู่หรือไม่ แต่ก็ยังไม่สมเหตุสมผล

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

แน่นอนว่าสิ่งนี้จะต้องเกิดขึ้นนานพอที่คุณจะสังเกตเห็นดังนั้นฉันเดาว่านี่อาจเป็นข้อผิดพลาดที่แปลกประหลาดบางอย่างในบัญชีหรือเคอร์เนลของบัญชี


0

เรา: userspace - สิ่งที่คุณทำงานอยู่เหนือเคอร์เนล sy: การเรียกของระบบ - สิ่งที่ทำงานอยู่ภายในเคอร์เนล ni: กระบวนการที่ถูกเปลี่ยนรหัส id: idle wa: กำลังรอ i / o hi: การขัดจังหวะฮาร์ดแวร์ - เวลาที่ใช้ในการจัดการกับฮาร์ดแวร์ si: การขัดจังหวะของซอฟต์แวร์ - เวลาที่ใช้ในการจัดการกับการขัดจังหวะที่สร้างโดยซอฟต์แวร์ (การเรียกของระบบ ฯลฯ )

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