Supercomputer operating system
सुपरकम्प्यूटर प्रचालन तन्त्र एक प्रचालन तन्त्र है जिसका उद्देश्य सुपरकम्प्यूटरों के लिए है। 20वीं शताब्दी के अंत से, सुपरकंप्यूटर ऑपरेटिंग सिस्टम में बड़े परिवर्तन हुए हैं, क्योंकि सुपरकंप्यूटर वास्तुकला में मौलिक परिवर्तन हुए हैं। जबकि शुरुआती ऑपरेटिंग सिस्टम को गति प्राप्त करने के लिए प्रत्येक सुपरकंप्यूटर के लिए अनुकूलित किया गया था, यह प्रवृत्ति इन-हाउस ऑपरेटिंग सिस्टम से दूर और लिनक्स के किसी न किसी रूप की ओर बढ़ रही है, जिसमें यह नवंबर 2017 में टॉप 500 सूची में सभी सुपरकंप्यूटर चला रहा है। 2021 में, शीर्ष 10 कंप्यूटर उदाहरण के लिए रेड हैट एंटरप्राइज लिनक्स (आरएचईएल), या इसके कुछ संस्करण या अन्य लिनक्स वितरण जैसे चलते हैं। उबुन्टू। यह देखते हुए कि आधुनिक बड़े पैमाने पर समानांतर सुपरकंप्यूटर आम तौर पर कई प्रकार के नोड्स का उपयोग करके अन्य सेवाओं से गणनाओं को अलग करते हैं, वे आमतौर पर अलग-अलग नोड्स पर अलग-अलग ऑपरेटिंग सिस्टम चलाते हैं, उदाहरण के लिए, एक छोटे और कुशल हल्के कर्नेल जैसे कि कंप्यूट नोड कर्नेल (सीएनके) या कंप्यूट नोड लिनक्स (सीएनएल) का उपयोग करते हुए कंप्यूट नोड्स पर, लेकिन एक बड़ी प्रणाली जैसे कि सर्वर और इनपुट/आउटपुट (आई/ओ) नोड्स पर लिनक्स-व्युत्पन्न। जबकि एक पारंपरिक बहु-उपयोगकर्ता कंप्यूटर प्रणाली में नौकरी का समय निर्धारण वास्तव में प्रसंस्करण और परिधीय संसाधनों के लिए एक कार्य समस्या है, एक बड़े पैमाने पर समानांतर प्रणाली में, नौकरी प्रबंधन प्रणाली को कम्प्यूटेशनल और संचार संसाधनों दोनों के आवंटन का प्रबंधन करने की आवश्यकता होती है, साथ ही साथ जब हजारों प्रोसेसर मौजूद होते हैं तो अपरिहार्य हार्डवेयर विफलताओं से शालीनता से निपटने की आवश्यकता होती है। हालांकि अधिकांश आधुनिक सुपरकंप्यूटर लिनक्स ऑपरेटिंग सिस्टम का उपयोग करते हैं, प्रत्येक निर्माता ने लिनक्स-व्युत्पन्न में अपने स्वयं के विशिष्ट परिवर्तन किए हैं जो वे उपयोग करते हैं, और कोई उद्योग मानक मौजूद नहीं है, आंशिक रूप से क्योंकि हार्डवेयर वास्तुकला में अंतर के लिए प्रत्येक हार्डवेयर डिजाइन के लिए ऑपरेटिंग सिस्टम को अनुकूलित करने के लिए परिवर्तन की आवश्यकता होती है। संदर्भ और अवलोकन सुपरकंप्यूटिंग के शुरुआती दिनों में, बुनियादी वास्तुशिल्प अवधारणाएं तेजी से विकसित हो रही थीं, और सिस्टम सॉफ्टवेयर को हार्डवेयर नवाचारों का पालन करना पड़ता था जो आमतौर पर तेजी से बदलते थे। प्रारंभिक प्रणालियों में, संचालन प्रणालियों को गति प्राप्त करने के लिए प्रत्येक सुपरकंप्यूटर के अनुरूप बनाया गया था, फिर भी उन्हें विकसित करने की जल्दबाजी में, गंभीर सॉफ्टवेयर गुणवत्ता की चुनौती सामने आई और कई मामलों में सिस्टम सॉफ्टवेयर विकास की लागत और जटिलता हार्डवेयर की तरह ही एक मुद्दा बन गई। 1980 के दशक में क्रे में सॉफ्टवेयर विकास की लागत हार्डवेयर पर खर्च की गई लागत के बराबर आ गई और यह प्रवृत्ति आंशिक रूप से इन-हाउस ऑपरेटिंग सिस्टम से जेनेरिक सॉफ्टवेयर के अनुकूलन की ओर बढ़ने के लिए जिम्मेदार थी। ऑपरेटिंग सिस्टम परिवर्तनों में पहली लहर 1980 के दशक के मध्य में आई, क्योंकि विक्रेता विशिष्ट ऑपरेटिंग सिस्टम को यूनिक्स के पक्ष में छोड़ दिया गया था। प्रारंभिक संदेह के बावजूद, यह परिवर्तन सफल साबित हुआ। 1990 के दशक की शुरुआत तक, सुपरकंप्यूटिंग सिस्टम सॉफ्टवेयर में बड़े बदलाव हो रहे थे। इस समय तक, यूनिक्स के बढ़ते उपयोग ने सिस्टम सॉफ्टवेयर को देखने के तरीके को बदलना शुरू कर दिया था। ऑपरेटिंग सिस्टम को लागू करने के लिए एक उच्च स्तरीय भाषा (सी) का उपयोग, और मानकीकृत इंटरफेस पर निर्भरता अतीत के असेंबली भाषा उन्मुख दृष्टिकोणों के विपरीत थी। जैसे-जैसे हार्डवेयर विक्रेताओं ने यूनिक्स को अपने सिस्टम में अनुकूलित किया, यूनिक्स में नई और उपयोगी सुविधाएँ जोड़ी गईं, जैसे कि तेज़ फ़ाइल सिस्टम और ट्यूनेबल प्रोसेस शेड्यूलर। हालाँकि, यूनिक्स को अनुकूलित करने वाली सभी कंपनियों ने "यूनिक्स फॉर सुपरकंप्यूटर" बनाने के लिए एक उद्योग मानक पर सहयोग करने के बजाय इसमें अनूठे बदलाव किए। यह आंशिक रूप से इसलिए था क्योंकि उनके वास्तुकला में अंतर के लिए प्रत्येक वास्तुकला के लिए यूनिक्स को अनुकूलित करने के लिए इन परिवर्तनों की आवश्यकता थी। इस प्रकार जैसे-जैसे सामान्य प्रयोजन ऑपरेटिंग सिस्टम स्थिर हो गए, सुपरकंप्यूटरों ने उनसे महत्वपूर्ण सिस्टम कोड को उधार लेना और अनुकूलित करना शुरू कर दिया और उनके साथ आने वाले माध्यमिक कार्यों के समृद्ध सेट पर भरोसा किया, न कि चक्र को फिर से स्थापित करने के लिए। हालाँकि, उसी समय सामान्य प्रयोजन ऑपरेटिंग सिस्टम के लिए कोड का आकार तेजी से बढ़ रहा था। जब तक यूनिक्स-आधारित कोड 500,000 लाइनों तक पहुँच गया था, तब तक इसका रखरखाव और उपयोग एक चुनौती थी। इसके परिणामस्वरूप माइक्रोकर्नल का उपयोग करने का कदम उठाया गया जिसमें ऑपरेटिंग सिस्टम कार्यों के न्यूनतम सेट का उपयोग किया गया था। कार्नेगी मेलन विश्वविद्यालय में मैक और आई. एन. आर. आई. ए. में कोरस ओ. एस. जैसी प्रणालियाँ प्रारंभिक माइक्रोकर्नलों के उदाहरण थे। ऑपरेटिंग सिस्टम को अलग-अलग घटकों में अलग करना आवश्यक हो गया क्योंकि सुपरकंप्यूटरों ने विभिन्न प्रकार के नोड्स विकसित किए, जैसे, कंप्यूट नोड्स बनाम आई/ओ नोड्स। इस प्रकार आधुनिक सुपरकंप्यूटर आमतौर पर अलग-अलग नोड्स पर अलग-अलग ऑपरेटिंग सिस्टम चलाते हैं, उदाहरण के लिए, कंप्यूट नोड्स पर सीएनके या सीएनएल जैसे छोटे और कुशल हल्के कर्नेल का उपयोग करते हुए, लेकिन सर्वर और आई/ओ नोड्स पर लिनक्स-व्युत्पन्न जैसे बड़े सिस्टम का उपयोग करते हुए। प्रारंभिक प्रणालियाँ सी. डी. सी. 6600, जिसे आम तौर पर दुनिया का पहला सुपर कंप्यूटर माना जाता है, चिप्पेवा ऑपरेटिंग सिस्टम चलाता था, जिसे फिर विभिन्न अन्य सी. डी. सी. 6000 श्रृंखला के कंप्यूटरों पर तैनात किया गया था। चिप्पेवा एक सरल नौकरी नियंत्रण उन्मुख प्रणाली थी जो पहले के सी. डी. सी. 3000 से ली गई थी, लेकिन इसने बाद के क्रोनोस और स्कोप प्रणालियों को प्रभावित किया। पहला क्रे-1 लॉस एलामोस लैब को बिना किसी ऑपरेटिंग सिस्टम या किसी अन्य सॉफ्टवेयर के दिया गया था। लॉस एलामोस ने इसके लिए एप्लीकेशन सॉफ्टवेयर और ऑपरेटिंग सिस्टम विकसित किया। क्रे 1 के लिए मुख्य टाइमशेयरिंग सिस्टम, क्रे टाइम शेयरिंग सिस्टम (सी. टी. एस. एस.), को तब लिवरमोर लैब्स में सी. डी. सी. 6600 ऑपरेटिंग सिस्टम के लिए लिवरमोर टाइम शेयरिंग सिस्टम (एल. टी. एस. एस.) के प्रत्यक्ष वंशज के रूप में विकसित किया गया था। सुपरकंप्यूटर के विकास में, बढ़ती सॉफ्टवेयर लागत जल्द ही प्रमुख हो गई, जैसा कि 1980 के दशक में क्रे में सॉफ्टवेयर विकास के लिए लागत हार्डवेयर के लिए उनकी लागत के बराबर बढ़ने से पता चलता है। यह प्रवृत्ति आंशिक रूप से इन-हाउस क्रे ऑपरेटिंग सिस्टम से यूनिक्स पर आधारित UNICOS सिस्टम में जाने के लिए जिम्मेदार थी। 1985 में, क्रे-2 यू. एन. आई. सी. ओ. एस. ऑपरेटिंग सिस्टम के साथ जहाज करने वाली पहली प्रणाली थी। लगभग उसी समय, ई. ओ. एस. ऑपरेटिंग सिस्टम को ई. टी. ए. सिस्टम्स द्वारा उनके ई. टी. ए. 10 सुपरकंप्यूटरों में उपयोग के लिए विकसित किया गया था। कंट्रोल डेटा कॉर्पोरेशन की पास्कल जैसी भाषा साइबिल में लिखी गई, ई. ओ. एस. ने सुपरकंप्यूटरों के लिए स्थिर ऑपरेटिंग सिस्टम विकसित करने में स्थिरता समस्याओं पर प्रकाश डाला और अंततः उसी मशीन पर यूनिक्स जैसी प्रणाली की पेशकश की गई। ई. टी. ए. प्रणाली सॉफ्टवेयर के विकास से सीखे गए सबक में एक नए सुपर कंप्यूटर ऑपरेटिंग सिस्टम के विकास से जुड़े उच्च स्तर के जोखिम और सिस्टम सॉफ्टवेयर पुस्तकालयों के अपने बड़े मौजूदा आधार के साथ यूनिक्स का उपयोग करने के लाभ शामिल थे। 1990 के दशक के मध्य तक, पुराने ऑपरेटिंग सिस्टम में मौजूदा निवेश के बावजूद, प्रवृत्ति यूनिक्स-आधारित सिस्टम के उपयोग की ओर थी, जिसने कई प्लेटफार्मों में वैज्ञानिक कंप्यूटिंग के लिए इंटरैक्टिव ग्राफिकल यूजर इंटरफेस (जीयूआई) के उपयोग को भी सुविधाजनक बनाया। एक कमोडिटी ओएस की ओर बढ़ने के विरोधियों ने लिनक्स विकास की तेज गति और ध्यान को अपनाने के खिलाफ एक बड़ी बाधा के रूप में उद्धृत किया। जैसा कि एक लेखक ने लिखा है "लिनक्स संभवतः पकड़ लेगा, लेकिन अब हमारे पास बड़े पैमाने पर प्रणालियाँ हैं।" फिर भी, उस प्रवृत्ति ने गति प्राप्त करना जारी रखा और 2005 तक, लगभग सभी सुपर कंप्यूटरों ने कुछ यूनिक्स जैसे ओएस का उपयोग किया। यूनिक्स के इन रूपों में आई. बी. एम. ए. आई. एक्स., ओपन सोर्स लिनक्स सिस्टम और क्रे से यू. एन. आई. सी. ओ. एस. जैसे अन्य अनुकूलन शामिल थे। 20वीं शताब्दी के अंत तक, लिनक्स को सुपरकंप्यूटिंग पाई का उच्चतम हिस्सा होने का अनुमान लगाया गया था। आधुनिक दृष्टिकोण आईबीएम ब्लू जीन सुपरकंप्यूटर गणना नोड्स पर सीएनके ऑपरेटिंग सिस्टम का उपयोग करता है, लेकिन आई/ओ नोड्स पर आई/ओ नोड कर्नेल (आईएनके) नामक एक संशोधित लिनक्स-आधारित कर्नेल का उपयोग करता है। सी. एन. के. एक हल्का कर्नेल है जो प्रत्येक नोड पर चलता है और उस नोड पर एकल उपयोगकर्ता के लिए चलने वाले एकल अनुप्रयोग का समर्थन करता है। कुशल संचालन के लिए, सी. एन. के. के डिजाइन को सरल और न्यूनतम रखा गया था, जिसमें भौतिक स्मृति को स्थिर रूप से मैप किया गया था और सी. एन. के. को न तो समय निर्धारण या संदर्भ परिवर्तन की आवश्यकता थी और न ही प्रदान किया गया था। सी. एन. के. गणना नोड पर फ़ाइल आई/ओ को भी लागू नहीं करता है, लेकिन इसे समर्पित आई/ओ नोड्स को सौंपता है। हालाँकि, यह देखते हुए कि ब्लू जीन मल्टीपल कंप्यूट नोड्स पर एकल I/O नोड साझा करते हैं, I/O नोड ऑपरेटिंग सिस्टम को मल्टी-टास्किंग की आवश्यकता होती है, इसलिए लिनक्स-आधारित ऑपरेटिंग सिस्टम का चयन किया जाता है। जबकि पारंपरिक बहु-उपयोगकर्ता कंप्यूटर प्रणालियों और प्रारंभिक सुपर कंप्यूटरों में, नौकरी का समय निर्धारण प्रभावी रूप से प्रसंस्करण और परिधीय संसाधनों के लिए एक कार्य समय निर्धारण समस्या थी, एक बड़े पैमाने पर समानांतर प्रणाली में, नौकरी प्रबंधन प्रणाली को कम्प्यूटेशनल और संचार संसाधनों दोनों के आवंटन का प्रबंधन करने की आवश्यकता होती है। सुपर कंप्यूटर के विभिन्न विन्यासों में कार्य समय-निर्धारण और ऑपरेटिंग सिस्टम को ट्यून करना आवश्यक है। एक विशिष्ट समानांतर नौकरी अनुसूचक के पास एक मास्टर अनुसूचक होता है जो कुछ दास अनुसूचकों को समानांतर नौकरियों को शुरू करने, निगरानी करने और नियंत्रित करने का निर्देश देता है, और समय-समय पर उनसे नौकरी की प्रगति की स्थिति के बारे में रिपोर्ट प्राप्त करता है। कुछ, लेकिन सभी सुपरकंप्यूटर अनुसूचक नौकरी निष्पादन के स्थान को बनाए रखने का प्रयास करते हैं। क्रे एक्स. टी. 3 और क्रे एक्स. टी. 4 प्रणालियों पर उपयोग किया जाने वाला पी. बी. एस. प्रो शेड्यूलर अपने त्रि-आयामी टोरस इंटरकनेक्ट पर स्थान को अनुकूलित करने का प्रयास नहीं करता है, बल्कि केवल पहले उपलब्ध प्रोसेसर का उपयोग करता है। दूसरी ओर, ब्लू जीन सुपरकंप्यूटर पर आईबीएम के अनुसूचक का उद्देश्य स्थानीयता का दोहन करना और एक ही अनुप्रयोग से 8x8x8 नोड समूह के एक या अधिक मध्य तलों को कार्य सौंपकर नेटवर्क विवाद को कम करना है। स्लर्म वर्कलोड मैनेजर शेड्यूलर एक सर्वोत्तम फिट एल्गोरिदम का उपयोग करता है, और कार्य असाइनमेंट के स्थान को अनुकूलित करने के लिए हिल्बर्ट कर्व शेड्यूलिंग करता है। तियानहे-2 जैसे कई आधुनिक सुपरकंप्यूटर स्लर्म का उपयोग करते हैं, जो पूरे सिस्टम में संसाधनों के लिए विवाद का मध्यस्थता करता है। स्लर्म ओपन सोर्स, लिनक्स-आधारित, बहुत स्केलेबल है, और प्रति घंटे 100,000 से अधिक नौकरियों के निरंतर थ्रूपुट के साथ एक कंप्यूटर क्लस्टर में हजारों नोड्स का प्रबंधन कर सकता है। वितरित ऑपरेटिंग सिस्टम सुपरकंप्यूटर वास्तुकला भी देखें सुपरकंप्यूटर ऑपरेटिंग सिस्टम का उपयोग भाग संदर्भ ऑपरेटिंग सिस्टम सुपरकंप्यूटर ऑपरेटिंग सिस्टम