यूनिक्स के 'टॉप' कमांड में सीपीयू मूल्यों द्वारा भ्रमित


11

नीचे दिए गए स्क्रीनशॉट में, समग्र CPU को 3% बताया जा रहा है, लेकिन mysqld प्रक्रिया को 57% का उपयोग करने के रूप में बताया गया है। क्या यह समग्र 3% का 57% है और इस प्रकार mysqld केवल 1.5% CPU का उपयोग कर रहा है?

शीर्ष स्क्रीनशॉट http://img.skitch.com/20090620-cih33piwnnrke6aw41y9p1phwr.jpg

अद्यतन : नीचे एक टिप्पणीकार ने अनुरोध किया कि मैं '1' कुंजी दबाऊं और परिणाम पोस्ट करूं: 1 कुंजी http://img.skitch.com/20090620-gayja43s44qtw2wkw4aq642e8c.pg

जवाबों:


11

57.6% का मतलब है कि mysqld एक सीपीयू के .576 का उपयोग कर रहा है। विसंगति एक पूरे के रूप में सिस्टम के लिए डेटा संग्रह और प्रति-प्रक्रिया डेटा एकत्र करने के बीच दौड़ की स्थिति होने की संभावना है।

EDIT: आपके अपडेट के आधार पर ऐसा लगता है कि आपके पास 16 कोर हैं।

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

तो वह आपका 3% कहां से आ रहा है।

यदि आप सभी निष्क्रिय प्रतिशत को जोड़ते हैं और 1600% से घटाते हैं, तो वह भी लगभग 57.5% पर आ जाता है।


3

क्या आप नंबर 1 दबाने की कोशिश कर सकते हैं जब शीर्ष चल रहा है और देखें कि क्या होता है।

संपादित करें:

श्री अनजान इसे अच्छी तरह से कहते हैं।

शीर्ष कह रहा है "यदि आपके पास एक सीपीयू कोर है, तो यह 57.5% व्यस्त होगा।"

लेकिन आपके पास 16 कोर हैं। तो यह 57 नंबर पूरी जगह पर फैला हुआ है, जिसमें mysqld बहु-थ्रेडेड और सब कुछ है ...

भ्रमित करने की तरह। लेकिन मुझे लगता है कि यह इसलिए है क्योंकि शीर्ष को प्रत्येक कोर के लिए जानकारी प्रदर्शित करना कठिन होगा ... 16 या अधिक कोर के साथ एक शीर्ष सूचना रेखा की कल्पना करें!

इसके अलावा अगर आप सभी "% us" CPU समय जोड़ते हैं

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 ने सीपीयू का उपयोग करना बंद कर दिया है या शुरू कर सकता है। यह अच्छी तरह से सिर्फ एक साधारण दौड़ की स्थिति हो सकती है।

निश्चित रूप से, यह आपके द्वारा देखे जाने के लिए काफी पहले हुआ होगा, इसलिए मैं अनुमान लगा रहा हूं कि यह शीर्ष या कर्नेल के लेखांकन में कहीं एक अजीब बग हो सकता है।


0

हमें: उपयोगकर्ता-क्या आप कर्नेल से ऊपर चल रहे हैं: सिस्टम कॉल - कर्नेल नी के अंदर क्या चल रहा है: पुन: प्रोसेस की गई प्रक्रिया आईडी: निष्क्रिय वा: आई / ओ हाय का इंतजार: हार्डवेयर व्यवधान - हार्डवेयर से निपटने में कितना समय व्यतीत होता है si: सॉफ्टवेयर इंटरप्ट - सॉफ्टवेयर-निर्मित इंटरप्ट (सिस्टम कॉल आदि) के साथ काम करने में कितना समय व्यतीत होता है

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.