पिछला उत्तर बहुत दिलचस्प है।
कुछ गुगली करने के बाद, मुझे कुछ संबंधित विषय मिले:
अंतिम लिंक पर, पायथन स्क्रिप्ट तब काम नहीं करती है जब आपके मेजबान के पास कई भौतिक आईडी हैं। मैंने अंत में इसे एक अलग स्थिति के साथ संशोधित करने का प्रयास किया:
बदल रहा है:
if p > 0:
सेवा
if p % 2 == 1:
लेकिन यह पिछले संदेश के आधार पर, अपेक्षा के अनुरूप काम नहीं करता है। वैसे, आप कुछ अधिक व्यापक कर सकते हैं:
grep . /sys/devices/system/cpu/cpu{,1}?/topology/thread_siblings | tr : \\\t | sed -r 's,^,\s\s\s\s,'
साथ में:
for file in /sys/devices/system/cpu/cpu[0-9]*/topology/thread_siblings_list; do echo -n "$file "; cat $file; done |sort -k2 -n
[...]
हाइपरथ्रेडिंग सक्षम के साथ कई कोर होस्ट पर क्या दिलचस्प है हार्डवेयर पर तार्किक कोर का वितरण है।
उदाहरण के लिए, मेरे एक कंप्यूटर पर (48 तार्किक कोर, 2 भौतिक प्रोसेसर, 24 (12 * 2) 'असली कोर' (इसलिए, 24 वर्चुअल कोर)):
for file in /sys/devices/system/cpu/cpu[0-9]*/topology/thread_siblings_list; do echo -n "$file "; cat $file; done |sort -k2 -n
/sys/devices/system/cpu/cpu0/topology/thread_siblings_list 0,24
/sys/devices/system/cpu/cpu24/topology/thread_siblings_list 0,24
/sys/devices/system/cpu/cpu1/topology/thread_siblings_list 1,25
/sys/devices/system/cpu/cpu25/topology/thread_siblings_list 1,25
/sys/devices/system/cpu/cpu26/topology/thread_siblings_list 2,26
/sys/devices/system/cpu/cpu2/topology/thread_siblings_list 2,26
/sys/devices/system/cpu/cpu27/topology/thread_siblings_list 3,27
/sys/devices/system/cpu/cpu3/topology/thread_siblings_list 3,27
/sys/devices/system/cpu/cpu28/topology/thread_siblings_list 4,28
/sys/devices/system/cpu/cpu4/topology/thread_siblings_list 4,28
/sys/devices/system/cpu/cpu29/topology/thread_siblings_list 5,29
/sys/devices/system/cpu/cpu5/topology/thread_siblings_list 5,29
/sys/devices/system/cpu/cpu30/topology/thread_siblings_list 6,30
/sys/devices/system/cpu/cpu6/topology/thread_siblings_list 6,30
/sys/devices/system/cpu/cpu31/topology/thread_siblings_list 7,31
/sys/devices/system/cpu/cpu7/topology/thread_siblings_list 7,31
/sys/devices/system/cpu/cpu32/topology/thread_siblings_list 8,32
/sys/devices/system/cpu/cpu8/topology/thread_siblings_list 8,32
/sys/devices/system/cpu/cpu33/topology/thread_siblings_list 9,33
/sys/devices/system/cpu/cpu9/topology/thread_siblings_list 9,33
/sys/devices/system/cpu/cpu10/topology/thread_siblings_list 10,34
/sys/devices/system/cpu/cpu34/topology/thread_siblings_list 10,34
/sys/devices/system/cpu/cpu11/topology/thread_siblings_list 11,35
/sys/devices/system/cpu/cpu35/topology/thread_siblings_list 11,35
/sys/devices/system/cpu/cpu12/topology/thread_siblings_list 12,36
/sys/devices/system/cpu/cpu36/topology/thread_siblings_list 12,36
/sys/devices/system/cpu/cpu13/topology/thread_siblings_list 13,37
/sys/devices/system/cpu/cpu37/topology/thread_siblings_list 13,37
/sys/devices/system/cpu/cpu14/topology/thread_siblings_list 14,38
/sys/devices/system/cpu/cpu38/topology/thread_siblings_list 14,38
/sys/devices/system/cpu/cpu15/topology/thread_siblings_list 15,39
/sys/devices/system/cpu/cpu39/topology/thread_siblings_list 15,39
/sys/devices/system/cpu/cpu16/topology/thread_siblings_list 16,40
/sys/devices/system/cpu/cpu40/topology/thread_siblings_list 16,40
/sys/devices/system/cpu/cpu17/topology/thread_siblings_list 17,41
/sys/devices/system/cpu/cpu41/topology/thread_siblings_list 17,41
/sys/devices/system/cpu/cpu18/topology/thread_siblings_list 18,42
/sys/devices/system/cpu/cpu42/topology/thread_siblings_list 18,42
/sys/devices/system/cpu/cpu19/topology/thread_siblings_list 19,43
/sys/devices/system/cpu/cpu43/topology/thread_siblings_list 19,43
/sys/devices/system/cpu/cpu20/topology/thread_siblings_list 20,44
/sys/devices/system/cpu/cpu44/topology/thread_siblings_list 20,44
/sys/devices/system/cpu/cpu21/topology/thread_siblings_list 21,45
/sys/devices/system/cpu/cpu45/topology/thread_siblings_list 21,45
/sys/devices/system/cpu/cpu22/topology/thread_siblings_list 22,46
/sys/devices/system/cpu/cpu46/topology/thread_siblings_list 22,46
/sys/devices/system/cpu/cpu23/topology/thread_siblings_list 23,47
/sys/devices/system/cpu/cpu47/topology/thread_siblings_list 23,47
इसका मतलब है कि cpu0 और cpu24 एक ही भौतिक हार्डवेयर "पता" साझा करते हैं। Cpu1 और cpu25 के लिए एक ही बात ...
इसलिए, मूल रूप से, अगर मैं अपने लिनक्स ओएस से हाइपरथ्रेडिंग को अक्षम करना चाहूंगा, तो मुझे सीपीयू में '0' डालना चाहिए। 24..47} / ऑनलाइन
for fake_cpu in {24..47}; do echo 0 > /sys/devices/system/cpu/cpu$fake_cpu/online;done
आप देखेंगे कि मेरा सिस्टम कोर को कितना दिलचस्प बना रहा है।
ht
झंडा केवल इंगित करता है कि बहु सूत्रण (HTT) सीपीयू द्वारा समर्थित है - नहीं करता है, तो यह सक्षम है या नहीं। फिर भी, यह हमेशा पर भरोसा नहीं किया जा सकता है, उदाहरण के लिए, यह झूठा संकेत देता है कि एक i5 i5-6500 HTT का समर्थन करता है: ark.intel.com/content/www/us/en/ark/products/88184/…