बहु प्रक्रमण (मल्टीप्रोसेसिंग)
बहु प्रक्रमण (बहुप्रोसेसिंग) कंप्यूटर प्रणाली के अन्दर दो या दो से अधिक सेंट्रल प्रोसेसिंग यूनिट (सीपीयू) का उपयोग होता है।[1][2] यह शब्द से अधिक प्रक्रमण या उनके बीच कार्यों को आवंटित करने की क्षमता का समर्थन करने के लिए प्रणाली की क्षमता को भी संदर्भित करता है। इस मूल विषय पर कई भिन्नताएं हैं, और बहु प्रक्रमण की परिभाषा संदर्भ के साथ भिन्न हो सकती है, ज्यादातर सीपीयू को कैसे परिभाषित किया जाता है (कई कोर (कम्प्यूटिंग) डाई (एकीकृत सर्किट) पर फ़ंक्शन के रूप में, चिप वाहक में कई मर जाते हैं, प्रणाली इकाई, आदि में कई पैकेज)।
कुछ ऑन-लाइन शब्दकोशों के अनुसार, बहुप्रक्रमण एक कंप्यूटर प्रणाली है जिसमें दो या दो से अधिक सेंट्रल प्रोसेसिंग यूनिट (एकाधिक प्रक्रमण) होते हैं, जिनमें से प्रत्येक मुख्य मेमोरी और बाह्य उपकरणों को साझा करता है, जिससे साथ प्रोग्राम को प्रोसेस किया जा सके।[3][4] 2009 की पाठ्यपुस्तक ने बहुप्रक्रमण प्रणाली को समान रूप से परिभाषित किया है, लेकिन यह देखते हुए कि प्रक्रमण कुछ या सभी प्रणाली की मेमोरी और I/O सुविधाओं को साझा कर सकते हैं; इसने पर्यायवाची शब्द के रूप में दृढ़ता युग्मित प्रणाली भी दिया था।[5]
ऑपरेटिंग प्रणाली स्तर पर, बहु प्रक्रमण का उपयोग कभी-कभी प्रणाली में कई समवर्ती प्रक्रिया (कंप्यूटिंग) के निष्पादन को संदर्भित करने के लिए किया जाता है, जिसमें प्रत्येक प्रक्रिया अलग सीपीयू या कोर पर चल रही होती है, जो किसी प्रक्रिया के विपरीत होती है।[6][7] जब इस परिभाषा के साथ प्रयोग किया जाता है, तो बहु प्रक्रमण को कभी-कभी कंप्यूटर बहुटास्किंग से अलग किया जाता है, जो केवल प्रक्रमण का उपयोग कर सकता है लेकिन इसे कार्यों के बीच समय के स्लाइस (यानी समय साझा करने की प्रणाली) में स्विच कर सकता है। बहु प्रक्रमण का अर्थ एक से अधिक प्रक्रमण का उपयोग करके कई प्रक्रियाओं का वास्तविक समानांतर निष्पादन करना हैं।[7] बहु प्रक्रमण का मतलब यह नहीं है कि प्रक्रिया या कार्य साथ से अधिक प्रक्रमण का उपयोग करता है; समानांतर कंप्यूटिंग शब्द का प्रयोग आम तौर पर उस परिदृश्य को दर्शाने के लिए किया जाता है।[6] अन्य लेखक ऑपरेटिंग प्रणाली तकनीकों को बहु क्रमादेशन के रूप में संदर्भित करना पसंद करते हैं और से अधिक प्रक्रमण होने के हार्डवेयर पहलू के लिए बहु प्रक्रमण शब्द आरक्षित करते हैं।[2][8] इस लेख के शेष भाग में बहु प्रक्रमण के बारे में केवल इसी हार्डवेयर अर्थ में चर्चा की गई है।
फ्लिन की टैक्सोनॉमी में, ऊपर परिभाषित बहुप्रक्रमण एकाधिक इंस्ट्रक्शन, एकाधिक डेटा मशीन हैं।[9][10] जैसा कि बहुप्रक्रमण शब्द सामान्य रूप से दृढ़ता युग्मित प्रणाली को संदर्भित करता है जिसमें सभी प्रक्रमण मेमोरी साझा करते हैं, बहुप्रक्रमण एमआईएमडी मशीनों की संपूर्ण श्रेणी नहीं होते हैं, जिसमें बहुकंप्यूटर प्रणाली पास करने वाले संदेश भी होते हैं।[9]
प्रागैतिहास
संभवतः बहु प्रक्रमण के विचार की पहली अभिव्यक्ति लुइगी फेडेरिको मेनाब्रिया द्वारा 1842 में चार्ल्स बैबेज के विश्लेषणात्मक इंजन (लवलेस है द्वारा अनुवादित) के बारे में लिखी गई थी: मशीन को खेल में लाया जा सकता है ताकि ही समय में कई परिणाम दिए जा सकें, जो प्रक्रियाओं की पूरी मात्रा को बहुत कम कर देगा।[11]
मुख्य विषय
प्रक्रमण समरूपता
बहु प्रक्रमण प्रणाली में, सभी सीपीयू समान हो सकते हैं, या कुछ विशेष उद्देश्यों के लिए आरक्षित हो सकते हैं। हार्डवेयर और ऑपरेटिंग प्रणाली सॉफ़्टवेयर डिज़ाइन विचारों का संयोजन किसी दिए गए प्रणाली में समरूपता (या इसकी कमी) निर्धारित करता है। उदाहरण के लिए, हार्डवेयर या सॉफ़्टवेयर के लिए आवश्यक हो सकता है कि केवल विशेष सीपीयू सभी हार्डवेयर व्यवधानों का जवाब दे, जबकि प्रणाली में अन्य सभी कार्य सीपीयू के बीच समान रूप से वितरित किए जा सकते हैं; या कर्नेल-मोड कोड का निष्पादन केवल विशेष सीपीयू तक ही सीमित हो सकता है, जबकि उपयोगकर्ता-मोड कोड को प्रक्रमण के किसी भी संयोजन में निष्पादित किया जा सकता है। यदि इस तरह के प्रतिबंध लगाए जाते हैं तो बहु प्रक्रमण प्रणाली अक्सर डिजाइन करना आसान होता है, लेकिन वे उन प्रणालीों की तुलना में कम कुशल होते हैं जिनमें सभी सीपीयू का उपयोग किया जाता है।
प्रणाली जो सभी सीपीयू को समान रूप से व्यवहार करते हैं उन्हें सममित बहु प्रसंस्करण (एसएमपी) प्रणाली कहा जाता है। उन प्रणालियों में जहां सभी सीपीयू समान नहीं हैं, प्रणाली संसाधनों को असममित बहु प्रक्रमण (एएसएमपी), गैर-समान मेमोरी एक्सेस (एनयूएमए) बहु प्रक्रमण और कंप्यूटर क्लस्टर बहु प्रक्रमण सहित कई तरीकों से विभाजित किया जा सकता है।
मास्टर/गुलाम बहुप्रक्रमण प्रणाली
मास्टर/स्लेव बहुप्रक्रमण प्रणाली में, मास्टर सीपीयू कंप्यूटर के नियंत्रण में होता है और दास सीपीयू सौंपे गए कार्यों को करता है। गति और वास्तुकला के मामले में सीपीयू पूरी तरह से अलग हो सकते हैं। कुछ (या सभी) सीपीयू में साझा बस हो सकती है, प्रत्येक के पास निजी बस भी हो सकती है (निजी संसाधनों के लिए), या वे सामान्य संचार मार्ग को छोड़कर अलग-थलग हो सकते हैं। इसी तरह, सीपीयू आम रैम साझा कर सकते हैं और/या उनके पास निजी रैम हो सकती है जिसे अन्य प्रक्रमण एक्सेस नहीं कर सकते। मास्टर और गुलाम की भूमिका सीपीयू से दूसरे में बदल सकती है।
मास्टर/स्लेव बहुप्रक्रमण प्रणाली का प्रारंभिक उदाहरण टैंडी/रेडियो शेक [[टीआरएस-80 मॉडल II]] डेस्कटॉप कंप्यूटर है, जो फरवरी 1982 में आया और बहु-यूजर/बहु-टास्किंग ज़ेनिक्स ऑपरेटिंग प्रणाली चला, माइक्रोसॉफ्ट का यूनिक्स का संस्करण (टीआरएस कहा जाता है) -जेनिक्स). मॉडल 16 में 3 माइक्रोप्रक्रमण हैं, 8-बिट Zilog Z80 सीपीयू 4MHz पर चल रहा है, 16-बिट Motorola 68000 सीपीयू 6MHz पर चल रहा है और कीबोर्ड में Intel 8021 है। जब प्रणाली बूट किया गया था, Z-80 मास्टर था और Xenix बूट प्रक्रिया ने स्लेव 68000 को इनिशियलाइज़ किया, और फिर 68000 पर नियंत्रण स्थानांतरित कर दिया, जिसके बाद सीपीयू ने भूमिकाओं को बदल दिया और Z-80 स्लेव प्रक्रमण बन गया जो सभी के लिए जिम्मेदार था। डिस्क, संचार, प्रिंटर और नेटवर्क, साथ ही कीबोर्ड और एकीकृत मॉनिटर सहित I/O संचालन, जबकि ऑपरेटिंग प्रणाली और एप्लिकेशन 68000 सीपीयू पर चलते थे। Z-80 का उपयोग अन्य कार्यों के लिए किया जा सकता है।
पहले का TRS-80 मॉडल II, जो 1979 में जारी किया गया था, को भी बहुप्रक्रमण प्रणाली माना जा सकता था क्योंकि इसमें Z-80 सीपीयू और Intel 8021 दोनों थे[12] कीबोर्ड में माइक्रोप्रक्रमण। 8021 ने मॉडल II को पहला डेस्कटॉप कंप्यूटर प्रणाली बनाया जिसमें अलग पतले लचीले तार से जुड़ा अलग वियोज्य हल्का कीबोर्ड था, और संभवतः समर्पित माइक्रोप्रक्रमण का उपयोग करने वाला पहला कीबोर्ड, दोनों विशेषताएँ जो बाद में Apple और IBM द्वारा कॉपी की गईं। .
निर्देश और डेटा स्ट्रीम
बहु प्रक्रमण में, प्रक्रमण का उपयोग कई संदर्भों में निर्देशों के एकल अनुक्रम को निष्पादित करने के लिए किया जा सकता है (एकल निर्देश, एकाधिक डेटा या SIMD, अक्सर वेक्टर प्रसंस्करण में उपयोग किया जाता है), ही संदर्भ में निर्देशों के कई अनुक्रम (एकाधिक निर्देश, एकल डेटा या MISD) , विफल-सुरक्षित प्रणालियों में अतिरेक (इंजीनियरिंग) के लिए उपयोग किया जाता है और कभी-कभी पाइपलाइन (कंप्यूटिंग) या हाइपर थ्रेडिंग), या कई संदर्भों में निर्देशों के कई अनुक्रमों (एकाधिक निर्देश, कई डेटा या एमआईएमडी) का वर्णन करने के लिए लागू किया जाता है।
प्रक्रमण युग्मन
दृढ़ता युग्मित बहुप्रक्रमण प्रणाली
दृढ़ता युग्मित बहुप्रक्रमण प्रणाली में कई सीपीयू होते हैं जो बस स्तर पर जुड़े होते हैं। इन सीपीयू के पास केंद्रीय साझा मेमोरी (एसएमपी या यूनिफ़ॉर्म मेमोरी एक्सेस) तक पहुंच हो सकती है, या स्थानीय और साझा मेमोरी (एसएम) (गैर-यूनिफ़ॉर्म मेमोरी एक्सेस) दोनों के साथ मेमोरी पदानुक्रम में भाग ले सकते हैं। आईबीएम p690 रेगाटा उच्च अंत एसएमपी प्रणाली का उदाहरण है। Intel Xeon प्रक्रमण व्यवसाय पीसी के लिए बहुप्रक्रमण बाजार पर हावी थे और 2004 में AMD के Opteron रेंज के प्रक्रमण के रिलीज़ होने तक एकमात्र प्रमुख x86 विकल्प थे। प्रक्रमण की दोनों श्रेणियों का अपना ऑनबोर्ड कैश था लेकिन साझा मेमोरी तक पहुंच प्रदान करता था; Xeon प्रक्रमण सामान्य पाइप के माध्यम से और Opteron प्रक्रमण प्रणाली रैंडम एक्सेस मेमोरी के लिए स्वतंत्र रास्ते के माध्यम से।
चिप बहुप्रक्रमण, जिसे बहु-कोर (कंप्यूटिंग) | बहु-कोर कंप्यूटिंग के रूप में भी जाना जाता है, में चिप पर से अधिक प्रक्रमण रखे जाते हैं और दृढ़ता युग्मित बहु प्रक्रमण के सबसे चरम रूप के बारे में सोचा जा सकता है। कई प्रक्रमण वाले मेनफ्रेम प्रणाली अक्सर दृढ़ता युग्मित होते हैं।
लूजली कपल्ड बहुप्रक्रमण प्रणाली
लूजली कपल्ड बहुप्रक्रमण प्रणाली (अक्सर कंप्यूटर क्लस्टर के रूप में संदर्भित) एकाधिक स्टैंडअलोन अपेक्षाकृत कम प्रक्रमण काउंट कमोडिटी कंप्यूटर पर आधारित होते हैं जो उच्च गति संचार प्रणाली (गीगाबिट ईथरनेट सामान्य है) के माध्यम से जुड़े होते हैं। लिनक्स बियोवुल्फ़ क्लस्टर ढीले युग्मन प्रणाली का उदाहरण है।
दृढ़ता युग्मित प्रणालियाँ बेहतर प्रदर्शन करती हैं और शिथिल युग्मित प्रणालियों की तुलना में शारीरिक रूप से छोटी होती हैं, लेकिन ऐतिहासिक रूप से अधिक प्रारंभिक निवेश की आवश्यकता होती है और तेजी से मूल्यह्रास हो सकता है; शिथिल युग्मित प्रणाली में नोड्स आमतौर पर सस्ते कमोडिटी कंप्यूटर होते हैं और क्लस्टर से सेवानिवृत्ति पर स्वतंत्र मशीनों के रूप में पुनर्नवीनीकरण किए जा सकते हैं।
बिजली की खपत भी विचार है। गुच्छों की तुलना में दृढ़ता युग्मित प्रणालियाँ बहुत अधिक ऊर्जा-कुशल होती हैं। ऐसा इसलिए है क्योंकि मजबूती से युग्मित प्रणालियों में शुरुआत से ही साथ काम करने के लिए घटकों को डिजाइन करके बिजली की खपत में काफी कमी महसूस की जा सकती है, जबकि शिथिल युग्मित प्रणालियां उन घटकों का उपयोग करती हैं जो विशेष रूप से ऐसी प्रणालियों में उपयोग के लिए अभिप्रेत नहीं थे।
लूज़ली कपल्ड प्रणाली में अलग-अलग प्रणाली पर अलग-अलग ऑपरेटिंग प्रणाली या OS संस्करण चलाने की क्षमता होती है।
यह भी देखें
- बहुप्रक्रमण प्रणाली आर्किटेक्चर
- सममित बहु प्रक्रमण
- असममित बहु प्रक्रमण
- बहु-कोर प्रक्रमण
- बीएमडीएफएम - बाइनरी मॉड्यूलर डेटाफ्लो मशीन, एसएमपी एमआईएमडी रनटाइम वातावरण
- सॉफ्टवेयर तालाबंदी
- ओपन एचएमपीपी
संदर्भ
- ↑ Raj Rajagopal (1999). Introduction to Microsoft Windows NT Cluster Server: Programming and Administration. CRC Press. p. 4. ISBN 978-1-4200-7548-9.
- ↑ 2.0 2.1 Mike Ebbers; John Kettner; Wayne O'Brien; Bill Ogden (2012). Introduction to the New Mainframe: z/OS Basics. IBM. p. 96. ISBN 978-0-7384-3534-3.
- ↑ "Multiprocessor dictionary definition - multiprocessor defined". www.yourdictionary.com. Retrieved 16 March 2018.
- ↑ "multiprocessor". Retrieved 16 March 2018 – via The Free Dictionary.
- ↑ Irv Englander (2009). The architecture of Computer Hardware and Systems Software. An Information Technology Approach (4th ed.). Wiley. p. 265. ISBN 978-0471715429.
- ↑ 6.0 6.1 Deborah Morley; Charles Parker (13 February 2012). Understanding Computers: Today and Tomorrow, Comprehensive. Cengage Learning. p. 183. ISBN 978-1-133-19024-0.
- ↑ 7.0 7.1 Shibu K. V. Introduction to Embedded Systems. Tata McGraw-Hill Education. p. 402. ISBN 978-0-07-014589-4.
- ↑ Ashok Arora (2006). Foundations of Computer Science. Laxmi Publications. p. 149. ISBN 978-81-7008-971-1.
- ↑ 9.0 9.1 Ran Giladi (2008). Network Processors: Architecture, Programming, and Implementation. Morgan Kaufmann. p. 293. ISBN 978-0-08-091959-1.
- ↑ Sajjan G. Shiva (20 September 2005). Advanced Computer Architectures. CRC Press. p. 221. ISBN 978-0-8493-3758-1.
- ↑ L. F. Menabrea (October 1842). "Sketch of The Analytical Engine Invented by Charles Babbage". Bibliothèque Universelle de Genève (82).
Likewise, when a long series of identical computations is to be performed, such as those required for the formation of numerical tables, the machine can be brought into play so as to give several results at the same time, which will greatly abridge the whole amount of the processes.
- ↑ TRS-80 Model II Technical Reference Manual. Radio Shack. 1980. p. 135.