क्या सिस्टम CPU उपयोग को मापने के लिए एक मजबूत तरीका है?


0

स्टैक ओवरफ्लो पर इस सवाल को पढ़ते हुए मैं उलझन में पड़ गया । पूछने वाला कहता है:

"टॉप 'बस नहीं करेगा, क्योंकि सीपीयू डंप के बीच देरी होती है, इसके लिए 2 डंप और कई सेकंड की आवश्यकता होती है, जो मेरे प्रोग्राम को लटका देता है"

पूछने वाला किस बारे में बात कर रहा है? मैंने हमेशा यह माना है कि शीर्ष बिल्कुल वही काम करता है जो स्वीकृत उत्तर की सिफारिश करता है। और उसका दावा है कि शीर्ष "उसके कार्यक्रम को लटका देता है" मुझे इससे कोई मतलब नहीं है, लेकिन किसी ने उसे टिप्पणियों में इसे बाहर नहीं बुलाया।

आमतौर पर मुझे एक मशीन पर चलने वाले प्रक्रियाओं के एक बड़े समूह के लिए समग्र सीपीयू उपयोग करने की आवश्यकता होती है। आमतौर पर मैं सिर्फ एक सबसे लंबी नमूना दर (आमतौर पर 10 सेकंड) के साथ सबसे खराब स्थिति में अपनी प्रक्रियाओं को चलाने के दौरान और एक औसत लोड अनुमान निर्धारित करता हूं। क्या इस तरह से माप लेना पूरी तरह से गलत है?

नोट: अपने माप प्राप्त करते समय मैं यह भी सुनिश्चित करता हूं कि कोई अन्य अनावश्यक सेवा या उपयोगकर्ता स्थान प्रक्रियाएं नहीं चल रही हैं।


आपकी धारणा सही है। टिप्पणी के लेखक की अधिक जानकारी के बिना यह समझना मुश्किल है कि वे वास्तव में क्या बात कर रहे थे।
रामहाउंड

ओपीएस पोस्ट से, उन्होंने संकेत दिया कि शीर्ष एक सेकंड से भी कम समय में जवाब नहीं देगा, क्योंकि यह प्रक्रिया समय की गणना करता है, जिसकी तुलना में कई राज्य रीडिंग की आवश्यकता होती है। क्योंकि इसे कस्टम प्रोग्राम्स मेन थ्रेड पर बुलाया जा रहा है, इसने इसके आउटपुट में फ्रीज़ पेश किए, भले ही वे केवल एक या दो ही हों। इंटरएक्टिव डिस्प्ले के लिए टॉप बनाया जाता है, न कि प्रोग्रामेटिक क्वेरी के लिए, जिसके लिए प्रोस्टेट अधिक उपयुक्त है।
फ्रैंक थॉमस

@FrankThomas आह मैं देख रहा हूँ। किसी तरह मैंने याद किया कि वह प्रोग्रामेटिक रूप से क्वेरी कर रहा था। अब समझ में आता है।
mildildt

जवाबों:


0

उस टिप्पणी के पोस्टर शायद करने के लिए बात कर रहा है यह :

समस्या का वर्णन: जब मैं 'टॉप' कमांड के लिए एक विशेष विकल्प का उपयोग करता हूं, विशेष रूप से, -n -1, मुझे उचित आउटपुट नहीं मिलता है।

नियमित मोड में शीर्ष पर चलने पर, यह अद्यतन करता रहता है और प्रत्येक अपडेट के साथ Cpu (s) लाइन के मान बदलते रहते हैं। हालांकि, जब -bn1 स्विच (बैच मोड, 1 पुनरावृत्ति) के साथ शीर्ष पर चल रहा है, तो सीपीयू (एस) लाइन रन से सेकंड, मिनट या घंटों तक चलाने के लिए नहीं बदलती है।

top -bबूट के बाद से प्रतिशत का 1 पुनरावृत्ति , इसलिए हमें -n 2वर्तमान प्रतिशत प्राप्त करने के लिए कम से कम दो पुनरावृत्तियों ( ) की आवश्यकता है । इसलिए, जब तक आप topअपने डेटा को इकट्ठा करने के लिए उपयोग करने से पहले एक बार चलाते हैं तब तक आप ठीक हो जाएंगे।

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