फिर से हाइपर थ्रेडिंग के बारे में


0

हाइपर-थ्रेडिंग सक्षम के साथ डुअल-कोर परमाणु के साथ मेरे पास आसुस 1025 सी है। जब मैं गेम खेलता हूं, तो प्रोसेसर लोड दर हमेशा 25% (1 कोर) से कम होती है। क्या इसका मतलब यह है, कि खेल (एकल धागा चल रहा है) केवल एक कोर की आधी शक्ति पर कब्जा कर लेता है? इसलिए, अगर मैं HT अनुप्रयोगों को अक्षम कर सकता हूं और एक कोर की पूरी शक्ति पर कब्जा कर सकता हूं?

और, अगर इसका अधिकार है, तो मैं इसे कैसे कर सकता हूं? मेरे लैपटॉप में BIOS बहुत सीमित है, हाइपर-थ्रेडिंग (सक्षम) के लिए लाइन है, लेकिन यह सक्रिय नहीं है, इसलिए मैं इसे बंद नहीं कर सकता।

जवाबों:


2

विंडोज़ एक्सपी में, (मुझे लगता है कि विस्टा, 7 और 8 भी), एक हाइपर-थ्रेडेड सिंगल कोर सीपीयू, जो सिंगल थ्रेड को 100% उपयोग पर चलाता है, विंडोज़ टास्क मैनेजर में 50% सीपीयू उपयोग दिखाएगा। एक्सट्रपलेशन करने के लिए, यह कहेगा कि एचटी के साथ दोहरे कोर का उपयोग करने वाला आपका कंप्यूटर 25% दिखाएगा जब एक सिंगल कोर द्वारा एक सिंगल कोर का 100% उपयोग किया जा रहा है; यदि आपका गेम सिंगल थ्रेडेड है, तो यह 100% कोर का उपयोग करेगा, जो कि सीपीयू का 50% है, लेकिन केवल 25% का उपयोग दिखाया गया है।

यदि आप HT को अक्षम करते हैं, तो एकल थ्रेडेड गेम अभी भी एक कोर 100% का उपयोग करेगा, जो अभी भी 50% CPU है, लेकिन यह वास्तव में 50% उपयोग दिखाएगा।

कई लेखों से पता चला है कि एचटी सक्षम होने के बावजूद औसतन प्रदर्शन बढ़ता है, हालांकि ऐसी परिस्थितियां हैं कि एचटी शो प्रदर्शन को कम करते हैं। कहा जा रहा है, एचटी को बंद करने का सबसे बड़ा फायदा यह होगा कि यह बेहतर होगा क्योंकि ऐसा लगेगा कि आप अपने सीपीयू का अधिक उपयोग कर रहे हैं। साइकोलॉजी प्लेसेबो प्रभाव के माध्यम से कहेगा कि यह वास्तव में ऐसा प्रतीत हो सकता है कि एक प्रदर्शन लाभ है क्योंकि आपको लगता है कि 2x जैसा कि सीपीयू का उपयोग किया जा रहा है। जबकि कई असहमत हो सकते हैं, आप कैसे महसूस करते हैं कि चीजें वास्तव में चीजों की तुलना में अधिक प्रभाव डाल सकती हैं। यदि यह आपके साथ सच है, तो HT बंद करें! प्रदर्शन में कमी न्यूनतम होगी।

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

इस बात के लिए कि क्या आप उस कंप्यूटर पर HT को सक्षम और अक्षम कर सकते हैं; ऐसा लगता है जैसे आपके लैपटॉप के लिए उपयोगकर्ता मैनुअल में BIOS में विकल्प होने के बारे में कुछ भी नहीं है जिसे आप संशोधित कर सकते हैं। यदि आप विकल्प को चालू करने की अनुमति देते हैं, तो आप यह देखने के लिए BIOS अपडेट की कोशिश कर सकते हैं। इसके अलावा, यदि आप सेटिंग को संशोधित नहीं कर सकते हैं, तो आप बहुत अधिक भाग्य से बाहर हैं।


1

हाइपर-थ्रेडिंग केवल एक तरीका है कि एक प्रोसेसर (कोर) एक ही समय में एक ही कोर में निष्पादित करने के लिए कई थ्रेड्स से पाइपलाइन निर्देशों को पाइप कर सकता है जब यह पता लगाता है कि ऑपरेशन स्वतंत्र हैं और पाइपलाइन के विभिन्न हिस्सों का उपयोग कर रहे हैं । इसे एक आभासी कोर बनाने के रूप में सोचो जो कि अनुप्रयोगों द्वारा उपयोग किया जा सकता है जो समानांतर थ्रेड का उपयोग करके चलते हैं। जहां तक ​​किसी एप्लिकेशन के बारे में पता है, एक सिंगल कोर, गैर-एचटी प्रोसेसर और 8-कोर एचटी प्रोसेसर में कोई अंतर नहीं है।

एक आवेदन के लिए कई कोर या HT तकनीक का उपयोग करने के लिए इसे कोड के समानांतर निष्पादन को सक्षम करने के लिए बहु-थ्रेडेड होना चाहिए। यह एक तुच्छ कार्य नहीं है और ऐसे कई मुद्दे हैं जिन पर इस तरह से डिज़ाइन किए जाने पर ध्यान देना चाहिए। उदाहरण के लिए, यदि एक थ्रेड को दूसरे थ्रेड के पूरा होने की प्रतीक्षा करने की आवश्यकता है तो यह काम करता है इसे ऐसे सभी कार्यों के लिए मैन्युअल रूप से कोडित किया जाना चाहिए। देखभाल तब यह सुनिश्चित करने के लिए होनी चाहिए कि थ्रेड्स ऐसी स्थिति में समाप्त न हों, जहां वे एक-दूसरे का इंतजार कर रहे हों।

गेम जैसी चीजों के लिए, यह अक्सर इस विस्तृत डिज़ाइन को करने के लायक नहीं होता है और मैट्रिक्स प्रसंस्करण जैसे समानांतर प्रसंस्करण के लिए उपयुक्त बहुत से कार्य इसके बजाय GPU पर लोड किए जाते हैं जो कि इस प्रकार के ऑपरेशन के लिए बहुत अधिक उपयुक्त है, केवल आपको छोड़कर मुख्य प्रोसेसर पर एकल एचटी कोर का उपयोग किया जाता है।

एकाधिक कोर या HT को अक्षम करना एक ऐसा विकल्प है जो विरासत अनुप्रयोगों का समर्थन करने के लिए उपलब्ध है जो एक सच्चे मल्टीथ्रेड वातावरण के तहत अच्छी तरह से (या वास्तव में) नहीं चलते हैं। हालांकि, यह बस दूसरे कोर को बंद करने या एचटी क्षमताओं से निपटने वाले प्रोसेसर के हिस्सों को बंद करने का प्रभाव है। इससे प्रदर्शन में कोई वृद्धि नहीं होगी। वास्तव में इसे मूल रूप से प्रदर्शन को कम करने की गारंटी दी जा सकती है क्योंकि यहां तक ​​कि आपके मामले में भी जहां खेल केवल एक कोर का उपयोग कर रहा है, अन्य पृष्ठभूमि के कार्य अभी भी अन्य कोर पर किए जा सकते हैं। यदि आप इसे अक्षम कर रहे थे तो आपके गेम को ऑपरेटिंग सिस्टम द्वारा आपके गेम द्वारा उपयोग किए गए कोर को सिस्टम में अन्य पृष्ठभूमि कार्यों के साथ साझा करना धीमा हो जाएगा।

संपादित करें : इस प्रश्न को भी देखें । विंडोज़ टास्क शेड्यूलर मूल रूप से यह सुनिश्चित करेगा कि यदि एक थ्रेड हाइपरथ्रेडेड कोर का उपयोग कर रहा है तो उसे कोर के अन्य वर्चुअल हाफ का उपयोग करने के लिए कई कार्यों को शेड्यूल नहीं करना चाहिए। हालांकि, यह अभी भी 50% उपयोग के रूप में दिखाई देगा, हालांकि प्रभावी उपयोग अधिक हो सकता है।


एक प्रश्न - अनुप्रयोगों के लिए प्रदर्शन, बिना हाइपर-थ्रेडिंग समान (या समान) प्रदर्शन के साथ 1 थ्रेड चलाना?
शैडोप्रिंस

प्रदर्शन समान होगा, शायद एचटी के साथ बेहतर (बोलचाल की भाषा में, और मैंने परीक्षण नहीं किया है!)। याद रखें कि भले ही कोई एप्लिकेशन सिंगल थ्रेडेड हो, सिस्टम में हमेशा अन्य प्रक्रियाएं चल रही होती हैं जो प्रोसेसर समय के लिए प्रतिस्पर्धा कर रही होती हैं। एचटी सिर्फ इन पाइपलाइनों के उन हिस्सों का उपयोग करके अधिक कुशलता से चलाने में सक्षम बनाता है जो आपके एकल थ्रेडेड एप्लिकेशन द्वारा अप्रयुक्त हैं। एचटी के बिना सिंगल थ्रेडेड प्रक्रिया को चलाने के लिए पूरी तरह से रोक दिया जाएगा जो भी अन्य प्रक्रिया को चलाने की आवश्यकता है।
zelanix

यह इस बात पर भी निर्भर करता है कि कैसे होशियारी से ओएस प्रक्रियाओं को आत्मीयता प्रदान कर रहा है। सिद्धांत रूप में यह जानता है कि एक एकल थ्रेडेड एप्लिकेशन आधे HT कोर का भारी उपयोग कर रहा है और इसलिए अन्य आधे के लिए कुछ भी शेड्यूल नहीं करेगा। इस मामले में, एकल थ्रेडेड प्रक्रिया संभव उच्चतम प्रदर्शन पर चल रही होगी।
zelanix
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.