80 कोर में से 16 कोर का उपयोग नहीं किया जा रहा है


11

हाल ही में मुझे पता चला कि हमारा सर्वर सिस्टम में अब सभी 80 थ्रेड का उपयोग नहीं करता है। ऐसा लगता है कि उच्च प्रणाली भार के बावजूद, 16 कोर हमेशा निष्क्रिय हैं।

इसका डेल पॉवरएडज R900 सर्वर, 4 सॉकेट्स के साथ, 10-कोर Xeon के 4 गुना। तो 40 कोर, HT के साथ इसके 80 धागे हैं। (Intel (R) Xeon (R) CPU E7- 4850 @ 2.00GHz)। सिस्टम मेमोरी 512GB रनिंग Ubuntu 14.04.1 LTS है। मैंने अभी तक सर्वर को रिबूट नहीं किया है, मैं इससे बचने की उम्मीद कर रहा था।

अनाम
लिनक्स असेंबली 3.13.0-35-जेनेरिक # 62-उबंटू एसएमपी शुक्र 15 अगस्त 01:58:42 यूटीसी 2014 x86_64 x86_64 x86_64 GNU / लिनक्स

मैं निम्नलिखित की जाँच करूँगा:

तापमान i7z के साथ मापा जाता है: (यह 4 सॉकेट प्रदर्शित नहीं कर सकता है

Cpuinfo से Cpu की गति 1994.00Mhz
ट्रू फ्रीक्वेंसी (अकाउंटिंग टर्बो के बिना) 1994 मेगाहर्ट्ज

सॉकेट [0] - [भौतिक कोर = 10, तार्किक कोर = 20, अधिकतम ऑनलाइन कोर कभी = 10]
  सीपीयू गुणक 15x || बस घड़ी आवृत्ति (BCLK) 132.93 मेगाहर्ट्ज
  10 करोड़ पर बने टर्बो, हाइपर थ्रेडिंग ऑन
  टर्बो 2126.93 मेगाहर्ट्ज पर विचार के बिना अधिकतम आवृत्ति (132.93 x [16])
  अधिकतम टर्बो गुणक (यदि सक्षम है) 1/2/3/4/5/6 कोर के साथ 0x / 0x / 0x / 0x / 0x / 0x है
  वास्तविक वर्तमान आवृत्ति 1994.02 मेगाहर्ट्ज (नीचे का अधिकतम)
        कोर [कोर-आईडी]: वास्तविक फ़्रीक (बहु।) C0% हॉल्ट (C1)% C3% C6% Tp
        कोर 1 [1]: 1994.01 (15.00x) 100 0 0 0 75
        कोर 2 [5]: 1994.00 (15.00x) 100 0 0 0 77
        कोर 3 [9]: 1994.02 (15.00x) 100 0 0 0 76
        कोर 4 [13]: 1994.00 (15.00x) 100 0 0 0 77
        कोर 5 [17]: 1994.00 (15.00x) 100 0 0 0 77
        कोर 6 [21]: 1994.00 (15.00x) 97.7 0.404 0 1.86 77
        कोर 7 [25]: 1994.00 (15.00x) 94.5 0 1 5.27 77
        कोर 8 [29]: 1994.00 (15.00x) 100 0 0 0 76
        कोर 9 [33]: 1994.00 (15.00x) 99.8 0 1 1 75
        कोर 10 [37]: 1994.00 (15.00x) 100 0 0 0 73
  टर्बो 2126.93 मेगाहर्ट्ज पर विचार के बिना अधिकतम आवृत्ति (132.93 x [16])
  अधिकतम टर्बो गुणक (यदि सक्षम है) 1/2/3/4/5/6 कोर के साथ 0x / 0x / 0x / 0x / 0x / 0x है
  वास्तविक वर्तमान आवृत्ति 1994.02 मेगाहर्ट्ज (नीचे का अधिकतम)
        कोर [कोर-आईडी]: वास्तविक फ़्रीक (बहु।) C0% हॉल्ट (C1)% C3% C6% Tp
        कोर 1 [1]: 1994.02 (15.00x) 100 0 0 0 74
        कोर 2 [5]: 1994.00 (15.00x) 100 0 0 0 76
        कोर 3 [9]: 1994.02 (15.00x) 100 0 0 0 76
        कोर 4 [13]: 1994.00 (15.00x) 100 0 0 0 77
        कोर 5 [17]: 1994.00 (15.00x) 100 0 0 0 76
        कोर 6 [21]: 1994.00 (15.00x) 97 0 1 2.43 77
        कोर 7 [25]: 1994.00 (15.00x) 92.9 0 1 6.81 77
C0 = बिना रोक-टोक के चलने वाला प्रोसेसर) 100 0 0 0 75
C1 = हाल्ट के साथ चलने वाला प्रोसेसर (स्टेट्स> C0 पावर सेवर हैं) 1 1 75
C3 = PLL के साथ चलने वाले कोर बंद हो गए और कोर कैश 0 0 73 बंद हो गया
C6 = C3 + कोर स्टेट में सब कुछ लास्ट लेवल कैश में सेव हो जाता है
  तालिका में उपरोक्त मान अंतिम 1 सेकंड के प्रतिशत में हैं
[core-id] कोर-आईडी नंबर को / proc / cpuinfo में संदर्भित करता है
कचरा मूल्य पढ़ने पर 'कचरा मान' संदेश मुद्रित होता है
  बाहर निकलने के लिए Ctrl + C

आइडल: अंतिम 16 कोर सभी 100% निष्क्रिय हैं:

एमपीस्टैट -p सभी 1:
औसत: सीपीयू% usr% अच्छा% sys% iowait% irq% नरम% चोरी% अतिथि% gnice% thngle
औसत: सभी 70.69 0.00 0.70 0.00 0.00 0.00 0.00 0.00 28.61
औसत: 0 92.93 0.00 0.00 0.00 0.00 0.00 0.00 0.00 7.07
औसत: 1 94.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 6.00
औसत: 2 100.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
औसत: 3 83.33 0.00 2.08 0.00 0.00 0.00 0.00 0.00 14.58
औसत: 4 100.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
औसत: 5 100.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00
.................................................. ........
औसत: 64 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
औसत: 65 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
औसत: 66 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
औसत: 67 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
औसत: 68 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
औसत: 69 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
औसत: 70 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
औसत: 71 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
औसत: 72 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
औसत: 73 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
औसत: 74 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
औसत: 75 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
औसत: 76 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
औसत: 77 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
औसत: 78 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
औसत: 79 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00

शीर्ष लोड संख्या:

शीर्ष - 17:41:48 35 दिन, 6:28, 15 उपयोगकर्ता, लोड औसत: 77.69, 70.48, 62.73
कार्य: 1327 कुल, 44 रनिंग, 1281 नींद, 2 बंद, 0 ज़ोंबी
% Cpu (s): 63.7 us, 13.6 sy, 0.0 ni, 22.3 id, 0.2 wa, 0.0 hi, 0.2 si, 0.0 st
KiB मेम: 52837942 + कुल, 52553190 + इस्तेमाल किया, 2847524 मुफ्त, 535660 बफर
KiB स्वैप: 78124032 कुल, 2105608 का उपयोग, 76018416 मुफ्त। 40637328 + कैश्ड मेम

कभी-कभी निष्क्रिय% 100 नहीं होता है, लेकिन थोड़ा कम होता है, जैसा कि आप यहाँ देख सकते हैं, लेकिन ज्यादातर यह 100% बेकार है।

औसत: सीपीयू% usr% अच्छा% sys% iowait% irq% नरम% चोरी% अतिथि% gnice% thngle
औसत: सभी 70.69 0.00 0.70 0.00 0.00 0.00 0.00 0.00 28.61
औसत: 64 0.13 0.00 0.00 0.00 0.00 0.00 0.00 0.00 99.87
औसत: 65 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
औसत: 66 0.00 0.00 2.63 0.00 0.00 0.00 0.00 0.00 97.37
औसत: 67 0.00 0.00 0.13 0.13 0.00 0.00 0.00 0.00 99.75
औसत: 68 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
औसत: 69 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
औसत: 70 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
औसत: 71 0.00 0.00 0.12 0.00 0.00 0.00 0.00 0.00 99.88
औसत: 72 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
औसत: 73 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
औसत: 74 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
औसत: 75 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
औसत: 76 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
औसत: 77 0.00 0.00 0.13 0.00 0.00 0.00 0.00 0.00 99.87
औसत: 78 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00
औसत: 79 0.00 0.00 0.00 0.00 0.00 0.00 0.00 0.00 100.00

मैंने यह सुनिश्चित करने के लिए यह आदेश भी चलाया कि वे ऑनलाइन हों:

COUNT के लिए `seq 01 79`; do echo 1> / sys / devices / system / cpu / cpu $ {COUNT} / ऑनलाइन; 

एचटीओपी कार्यक्रम के साथ मैं प्रति थ्रेड के सीपीयू उपयोग की एक बार कल्पना कर सकता हूं, और 64 बार भरे हुए और 16 खाली वाले (अंतिम 16) देखें।

जब मैं एक कोर> 63 पर एक प्रक्रिया शुरू करने की कोशिश करता हूं तो वह भी ऐसा करने में विफल रहता है:

रूट @ सर्वर: ~ # कार्यक्षेत्र -सी 63 समय
उपयोग: समय [-pvV] [-f प्रारूप] [-o फ़ाइल] [--append] [--verbose]
       [--portability] [--format = format] [--output = फ़ाइल] [--version]
       [--quiet] [--help] कमांड [arg ...]
रूट @ सर्वर: ~ # कार्यस्थल -सी 64 समय
कार्यपत्रक: 0 का आत्मीयता सेट करने में विफल: अमान्य तर्क
रूट @ सर्वर: ~ # कार्यपत्र -सी 65 समय
कार्यपत्रक: 0 का आत्मीयता सेट करने में विफल: अमान्य तर्क

संबंधित धागा: /ubuntu/536541/ubuntu-use-only-2-out-of-4-processor-cores

EDIT: यह पता चला है कि कोर मक्खी पर बंद हैं, लेकिन ठीक से स्टार्टअप नहीं करते हैं। ऐसा लगता है कि इन अनुपलब्ध कोर पर चलने वाली प्रक्रियाएं हैं, लेकिन उन पर कोई भी नई प्रक्रिया शुरू करना असंभव है। Dmesg लॉग के अनुसार, कोर अक्षम होते हैं और एक दूसरे के बाद जल्दी से सक्षम होते हैं। मेरा कहना है कि इन शवों को बंद करने का इरादा था, इसलिए हमने इस 'सुविधा' को निष्क्रिय कर दिया। DMESG उदाहरण लॉग:

[सोम जनवरी 12 12:42:40 2015] kvm: CPU79 पर वर्चुअलाइजेशन को अक्षम करना
[सोम जनवरी 12 12:42:40 2015] smpboot: सीपीयू 79 अब ऑफ़लाइन है
....
[सोम जनवरी 12 12:43:12 2015] smpboot: बूटिंग नोड 0 प्रोसेसर 79 APIC 0xf3
[सोम जन १२ १२:४३:१२ २०१५] kvm: CPU79 पर वर्चुअलाइजेशन सक्षम करना

हम कोर को सक्षम / अक्षम कर रहे हैं:

COUNT के लिए `seq 64 79` में; echo 1> / sys / devices / system / cpu / cpu $ {COUNT} / ऑनलाइन;

हमने इस आदेश को अपने 16 अनुपलब्ध कोर के साथ कभी नहीं जोड़ा, क्योंकि आमतौर पर ऊपर दिए गए आदेश ठीक से काम करते हैं। (हमने powermanager को अक्षम करने का भी प्रयास किया, लेकिन इससे कोई मदद नहीं मिली)


1
आप या आपकी कंपनी ने सामान्य पीसी के लिए उबंटू के बजाय उबंटू सर्वर के साथ क्यों नहीं किया?
XperianX

1
यह असंभव नहीं है कि आपके 16 कोर वास्तव में अधिकतम क्षमता के लिए उपयोग किए जा रहे हैं, 16 वर्चुअल कोर को बिना किसी उपयोगी मार्जिन के छोड़ दिया गया है।
अनाम 2

1
क्या सभी 8 कोर (16 आभासी) एक भौतिक सीपीयू पर हैं, या वे सभी 4 सॉकेट्स में फैले हुए हैं? यदि वे एक भौतिक सीपीयू पर स्थित हैं, तो क्या यह संभव है कि उन कोर विफल हो गए हैं?
जिबरिश ५१

2
मैं सोच रहा था कि कहीं प्रणाली में कोड है जो सीपीयू आत्मीयता मुखौटा का प्रतिनिधित्व करता है सिर्फ 64 बिट्स के साथ जो इसे प्रक्रियाओं को अंतिम 16 कोर का उपयोग करने की अनुमति देने से रोकता है।
कास्परड

यह देखते हुए कि there's०-१६ = ६४, मुझे ऐसा प्रतीत होता है कि उपयोग करने के लिए अधिकतम संख्या में कुछ कृत्रिम सीमा कहीं है। संभवतः जो भी सॉफ़्टवेयर आप चला रहे हैं वह अधिकतम 64 कोर पर सेट है, या संभवतः यह 64 से अधिक थ्रेड उत्पन्न नहीं कर सकता है।
क्लोन्सेक्स

जवाबों:


1

सभी प्रोग्राम एकाधिक थ्रेड का उपयोग नहीं कर सकते हैं। उदाहरण के लिए php एक है। यदि एक php प्रक्रिया को बहुत अधिक CPU की आवश्यकता होती है, तो केवल 1 CPU अधिकतम होगा। और दूसरे बेकार हो जाएंगे।

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