2010-11-26 15 views
5

मैं इंटेल (आर) कोर (टीएम) 2 डुओ सीपीयू टी 6600 @ 2.20GHz (जैसा कि मुझे cat /proc/cpuinfo द्वारा बताया गया है), लेकिन मुझे जितना संभव हो उतना गहराई में जाना होगा। समांतर प्रोग्रामिंग पर काम करने के लिए आर्किटेक्चर (संभवतः pthreads का उपयोग कर)। कोई संकेतक?मैं अपने सीपीयू के समानांतर आर्किटेक्चर के बारे में जानकारी कैसे प्राप्त करूं?

उत्तर

10

sys फाइल सिस्टम जानता है सब इस बारे में:

$ ls /sys/devices/system/cpu 
cpu0 cpu2 cpuidle possible sched_mc_power_savings 
cpu1 cpu3 online present 

$ ls /sys/devices/system/cpu/cpu0/topology/ 
core_id  core_siblings_list thread_siblings 
core_siblings physical_package_id thread_siblings_list 

यहाँ documentation

है इस फाइल सिस्टम का उपयोग करना, आप कितनी सीपीयू है, कितने धागे वे है, पता कर सकते हैं जो सीपीयू अन्य सीपीयू के बगल में हैं, और कौन से सीपीयू कैश साझा करते हैं जिनके साथ अन्य।

उदाहरण के लिए - प्रश्न: कौन सी सीपीयू सीपीयू 0 को इसके साथ एल 2 कैश साझा करता है?

$ cat /sys/devices/system/cpu/cpu0/cache/index2/{type,level,shared_cpu_list} 
Unified 
2 
0-1 

ए: यह सीपीयू 1 (और स्वयं) के साथ एकीकृत एकीकृत एल 2 कैश साझा करता है।

एक और उदाहरण: प्रश्न: जो सीपीयू (एक बड़ी मशीन के) cpu0 रूप में एक ही शारीरिक पैकेज में कर रहे हैं:

cat /sys/devices/system/cpu/cpu0/topology/core_siblings 
00000000,00000000,00000000,00000000,00000000,00000000,00000000,00000055 

एक: कोर 0, 2, 4 और 6 (बिट पैटर्न से लिया इसके बाद के संस्करण, LSB = cpu0)


नहीं सभी Linux सिस्टम में sys फाइल सिस्टम है, और इसे जड़ में हमेशा नहीं है। (संभवतः proc/sys में?)। thread_siblings_list फॉर्म हमेशा उपलब्ध नहीं होता है, लेकिन thread_siblings (बिट पैटर्न) एक है।

-2

प्रोसेसर के बारे में सबसे कम जानकारी प्राप्त करने के लिए एक सिस्टम इंजीनियर सीपीयूजेड के बराबर चला सकता है और घर या कार्यालय पते के लिए कानून में अनुमत होने पर निम्नतम स्तर तक पहुंच सकता है जहां प्रोसेसर स्थापित और उपयोग किया जाता है। सॉफ़्टवेयर इंजीनियरों और डेवलपर्स को आम तौर पर विस्तार के स्तर को जानने की अनुमति नहीं दी जाती है, लेकिन मैं आपको बता सकता हूं कि आर्किटेक्चर उस प्रकार का हो सकता है जहां प्रोसेसर x1.75 प्रोसेसिंग समकक्ष के करीब एक आभासी दूसरा प्रोसेसर उत्पन्न करता है या वास्तविक होता है, या वास्तविक हैं डिजाइन के पिछले कार्यान्वयन के संवर्द्धन के रूप में प्रौद्योगिकी और नियंत्रण विधियों का उपयोग कर एक ही मर पर भौतिक एकाधिक कोर। कोर प्रोसेसर में सिस्टम प्रोग्रामर के लिए एक इंटरफ़ेस है, एप्लिकेशन डेवलपर्स का उपयोग करने के लिए और एक्सेस का यह तरीका इंटेल की अपेक्षा, उनके द्वारा उपलब्ध विवरणों की अपेक्षा होगी।

2

मुझे hwloc project के lstopo में काफी उपयोगी पाया गया। यह आपको ग्राफिकल आउटपुट (/proc और /sys में मिली जानकारी के आधार पर एलेक्स ब्राउन के रूप में वर्णित) आपके सिस्टम की टोपोलॉजी के बारे में बताएगा (उदाहरण के लिए उनका वेबपृष्ठ देखें)।चित्रमय उत्पादन से आप आसानी से देख सकते हैं

  • अगर hyperthreaded कोर वर्तमान
  • जो सीपीयू संख्या अनुरूप ही शारीरिक कोर पर विभिन्न hyperthreads हैं
  • कितने सीपीयू सॉकेट उपयोग किया जाता है
  • शेयर कोर जो L3 कैश
  • अगर मुख्य स्मृति सीपीयू सॉकेट के बीच या कि क्या आप NUMA सिस्टम पर हैं आम है

आदि

आप प्रोग्राम इस जानकारी का उपयोग करने की जरूरत है, वहाँ कुछ प्रलेखन कैसे hwloc एक पुस्तकालय के रूप में इस्तेमाल किया जा सकता है।

संबंधित मुद्दे

 संबंधित मुद्दे