धागे क्या हैं, और वे प्रोसेसर में क्या करते हैं?


27

मैं इंटेल पेंटियम ई 5700 सीपीयू के आँकड़े देख रहा था ।

इसमें दो कोर और दो धागे हैं। प्रोसेसर के लिए धागे क्या करते हैं? क्या कोर की संख्या और धागों की संख्या के बीच कोई संबंध है? समग्र रूप से सिस्टम के लिए धागे किस उद्देश्य से काम करते हैं?


यह या तो थ्रेड्स की संख्या है जो CPU एक समय में या कुछ नकली स्टेट को संभाल सकता है जिसे इंटेल ने आविष्कार किया था।
डिजिटएक्स

3
IMO के रूप में बंद करने के लिए वोट दिया गया यह बहुत सामान्य है - जबकि मैं हमेशा "बस Google यह" कहने के लिए बहुत संकोच कर रहा हूं, सुपर उपयोगकर्ता (और इसी तरह की साइटों) का उद्देश्य वास्तविक प्रश्नों का उत्तर देना है, तकनीकी शब्दों के लिए एक शब्दकोष नहीं है अधिक उपयुक्त संसाधनों में आसानी से देखा जा सकता है।
शिन्राइ

3
@Shinrai मैंने इसे कम सामान्य बनाने के लिए संपादित किया है
साइमन

जवाबों:


21

सीपीयू पर कोर काउंट कोर की भौतिक संख्या है, जबकि थ्रेड काउंट व्यक्तिगत अनुप्रयोग थ्रेड्स की संख्या है जो कि सीपीयू पर ही एक साथ निष्पादित की जा सकती है। किसी भी अतिरिक्त या विशेष हार्डवेयर के बिना, यह कोर गणना के बराबर है। हालांकि, कुछ प्रोसेसरों में कोर की तुलना में अधिक धागे होंगे।

कुछ इंटेल सीपीयू में हाइपरथ्रेडिंग नामक एक सुविधा होती है , जो एक ऑपरेटिंग सिस्टम को भौतिक कोर प्रति तार्किक कोर की मात्रा को दोगुना देखने की अनुमति देता है। यह ऑपरेटिंग सिस्टम को थ्रेड्स की मात्रा को एक साथ शेड्यूल और रन करने की अनुमति देता है, इसलिए सीपीयू I के मामले में ऊपर से जुड़ा हुआ है, चार भौतिक कोर हैं, लेकिन आठ तार्किक (ताकि आप एक साथ आठ धागे चला सकें)।

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

यह मल्टी-थ्रेडेड (अनुमति देता है नहीं एकल पिरोया) अनुप्रयोग, बहुत तेजी से चलाने के लिए एक से अधिक थ्रेड CPU पर एक बार में चला सकते हैं के बाद से।


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


1
क्या आप शायद समझा सकते हैं कि प्रोसेसर के लिए धागे क्या करते हैं? हाइपरथ्रेडिंग का उल्लेख करने के लिए +1, जैसा कि अभी बहुत सामान्य है (सभी i3 में होने लगता है)
साइमन शीहान

प्रत्येक प्रक्रिया में कम से कम एक धागा होता है। जब प्रक्रिया सीपीयू पर अपनी बारी आती है, तो मुख्य धागा तब तक चलता है जब तक कि सीपीयू चालू नहीं हो जाता। एक प्रक्रिया एक और धागा स्पॉन कर सकती है, और अब उसी प्रक्रिया के दो भाग चलेंगे और सीपीयू मोड़ के लिए पूछेंगे। सभी प्रक्रियाएं कार्यक्रम हैं, और इस तंत्र के साथ, एक ही कार्यक्रम में दो चीजें एक साथ चल सकती हैं। यह एक नई प्रक्रिया बनाने (यानी एक नए प्रोग्राम को फोर्क या लोड करने) से कम लेकिन कम सुरक्षित है। प्रक्रियाओं को एक दूसरे से अलग किया जाता है, एक प्रक्रिया के धागे नहीं हैं।
LawrenceC

क्या होगा अगर मैंने 50 समवर्ती धागे के साथ एक मल्टीथ्रेडेड जावा प्रोग्राम बनाया है, और मैं इसे इंटेल i7-4790K पर चला रहा हूं, जिसमें 4 कोर और 8 धागे हैं। क्या इसका मतलब यह है कि जावा एप्लिकेशन में उन 50 थ्रेड्स में से केवल 8 वास्तव में समवर्ती रूप से निष्पादित हो रहे हैं और बाकी एक कतार में हैं? कैसे काम करता है
Donato

@ डोनैटो ऑपरेटिंग सिस्टम किसी भी चल रहे थ्रेड को बाधित करता है ताकि दूसरों को अपना काम पूरा करने के लिए कुछ समय मिल सके। किसी भी समय सीपीयू पर केवल 8 थ्रेड चल रहे हैं, और प्रत्येक कोर लगातार अलग-अलग थ्रेड के बीच स्विच कर रहा है; यह उनके लिए "नौकरी" के रूप में सोचने के लिए सहायक है (नौकरियों को ध्यान में रखते हुए भी प्राथमिकता दी जा सकती है)। प्रत्येक कोर किसी दिए गए धागे के लिए कुछ काम करेगा , और फिर ऑपरेटिंग सिस्टम के कार्य अनुसूचक द्वारा एक अलग काम पर जाने के लिए बाधित किया जाता है, उस काम पर कुछ काम करते हैं, और इसी तरह और चौथा, जब तक कि नौकरी पूरी नहीं हो जाती।
ब्रेकथ्रू

@ ब्रीकथ्रिट, "" तो आप एक साथ आठ धागे चला सकते हैं ", व्यक्तिगत वास्तविक कोर द्वारा पेश की गई सच्ची समानता की तुलना में इस तरह की समानता की सीमाएं क्या हैं ? इसके अलावा, यह कैसे संभव है कि " हाइपरथ्रेडिंग डिसेबल के साथ एप्लिकेशन तेजी से चल सकते हैं "?
पेसियर

9

एक "कोर" एक प्रोसेसर के वास्तविक भौतिक उपसमूह का प्रतिनिधित्व करता है जो स्वयं प्रसंस्करण को संभाल सकता है, जबकि एक "धागा" यह है कि प्रोसेसर एक बार में कितनी वास्तविक प्रक्रियाओं को संभाल सकता है। इंटेल ने एक तकनीक विकसित की है जिसे वे "हाइपर-थ्रेडिंग" लेबल करते हैं यह तकनीक एक भौतिक कोर के लिए अनुमति देती है (जो आमतौर पर केवल एक समय में एक थ्रेड को संभालने में सक्षम होगी) अब एक साथ दो थ्रेड को संभालने में सक्षम होगी।

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

उदाहरण के लिए, मेरे काम के कंप्यूटर में एक i7 है। I7 में 4 भौतिक कोर हैं, लेकिन प्रत्येक कोर 'हाइपर-थ्रेडिंग' कर सकता है जो इस प्रोसेसर को एक बार में 8 थ्रेड्स को संभालने की अनुमति देता है। इसलिए यदि मैं कार्य प्रबंधक खोलता हूं, तो मुझे प्रोसेसर के प्रदर्शन पैमाने के लिए 8 बक्से दिखाई देंगे।

अंगूठे का एक सामान्य नियम यह है कि अधिक धागे की तुलना में अधिक शारीरिक कोर बेहतर हैं। इसलिए यदि आप ऐसे प्रोसेसर की तुलना कर रहे हैं जिसमें 4 कोर और 4 थ्रेड थे, तो 2 कोर 4 थ्रेड से बेहतर होगा। लेकिन जितने अधिक धागे आपके प्रोसेसर को संभाल सकते हैं, मल्टीटास्किंग के दौरान यह उतना ही बेहतर प्रदर्शन करेगा और कुछ बहुत ही गहन अनुप्रयोगों (वीडियो संपादन, सीएडी, सीएएम, संपीड़न, एन्क्रिप्शन, आदि) के लिए एक समय में एक से अधिक कोर का उपयोग करेगा।


"बक्से" से आपका क्या तात्पर्य है?
पचेरियर


-1

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


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