सिस्टोलिक सरणी: Difference between revisions
No edit summary |
No edit summary |
||
Line 1: | Line 1: | ||
{{Short description|A type of parallel computing architecture of tightly coupled nodes}} | {{Short description|A type of parallel computing architecture of tightly coupled nodes}} | ||
समांतर कंप्यूटिंग [[कंप्यूटर आर्किटेक्चर|कंप्यूटर स्थापत्य]] में एक सिस्टोलिक शृंखला दृढ़ता युग्मित [[डाटा प्रोसेसिंग यूनिट|डाटा संसाधन इकाई]] (डीपीयू) का एक सजातीय [[ग्राफ (असतत गणित)|नेटवर्क(असतत गणित)]] है जिसे सेल या [[नोड (कंप्यूटर विज्ञान)|बिंदु (कंप्यूटर विज्ञान)]] कहा जाता है। प्रत्येक बिंदु या डीपीयू स्वतंत्र रूप से अपने अपस्ट्रीम सह्योगियों से प्राप्त डेटा के एक फंक्शन के रूप में आंशिक परिणाम की गणना करता है, परिणाम को अपने भीतर संग्रहीत करता है और इसे डाउनस्ट्रीम पारित करता है। सिस्टोलिक सारणियों का प्रथम बार उपयोग [[ बादशाह कंप्यूटर |कोलोसस]] में किया गया था, जो [[द्वितीय विश्व युद्ध]] के समय जर्मन [[लॉरेंज सिफर]] सिफर को समाप्त के लिए प्रयुक्त किया जाने वाला एक प्रारंभिक कंप्यूटर था।<ref>{{YouTube |id=g2tMcMQqSbA |title=Colossus - The Greatest Secret in the History of Computing |time=41m45s}}</ref> कोलोसस की वर्गीकृत प्रकृति के कारण, वे स्वतंत्र रूप से एचटी कुंग और [[चार्ल्स लीजरसन]] के माध्यम से आविष्कार या फिर से खोजे गए थे, जिन्होंने बैंडेड मैट्रिसेस के लिए अनेक घने रैखिक बीजगणित गणनाओं (आव्यूह परिणाम, रैखिक समीकरणों की प्रणाली को हल करना, एलयू अपघटन, आदि) के लिए सारणियों का वर्णन किया था। प्रारंभिक अनुप्रयोगों में पूर्णांकों और बहुपदों के अधिकतम सामान्य विभाजकों की गणना करना शामिल है।<ref>http://www.eecs.harvard.edu/~htk/publication/1984-ieeetoc-brent-kung.pdf {{Bare URL PDF|date=March 2022}}</ref> उन्हें कभी-कभी फ्लिन की वर्गीकरण के तहत एकाधिक-निर्देश एकल-डेटा (एमआईएसडी) स्थापत्य के रूप में वर्गीकृत किया जाता है, लेकिन यह वर्गीकरण संशयात्मक है क्योंकि फ्लिन की चार श्रेणियों में से किसी से [[ धमनी का संकुचन |सिस्टोलिक]] शृंखला को भिन्न करने के लिए एक दृढ़ तर्क दिया जा सकता है: एसआईएसडी, एसआईएमडी, एमआईएसडी, एमआईएमडी, जैसा कि इस आलेख में बाद में विचार की गई है। | |||
समानांतर इनपुट डेटा यंत्रस्थ [[माइक्रोप्रोसेसर]] | समानांतर इनपुट डेटा यंत्रस्थ [[माइक्रोप्रोसेसर]] बिंदु ्स के एक नेटवर्क के माध्यम से प्रवाहित होता है, जो एक व्युत्पन्न परिणाम में इनपुट डेटा को संयोजित, संसाधित, [[विलय एल्गोरिथ्म]] या [[छँटाई एल्गोरिथ्म|अलग एल्गोरिथ्म]] करता है। क्योंकि एक सिस्टोलिक शृंखला के माध्यम से डेटा का तरंग जैसा प्रसार मानव संचार प्रणाली की नाडी जैसा दिखता है, सिस्टोलिक नाम चिकित्सा शब्दावली से लिया गया था। यह नाम हृदय के माध्यम से रक्त के नियमित स्पंदित के सादृश्य के रूप में सिस्टोल से लिया गया है। | ||
== अनुप्रयोग == | == अनुप्रयोग == | ||
बड़े पैमाने पर समानांतर कंप्यूटिंग एकीकरण, संवलन, सहसंबंध, [[मैट्रिक्स गुणन|आव्यूह गुणन]] या डेटा पृथक्करण | बड़े पैमाने पर समानांतर कंप्यूटिंग एकीकरण, संवलन, सहसंबंध, [[मैट्रिक्स गुणन|आव्यूह गुणन]] या डेटा पृथक्करण कार्यों को करने के लिए सिस्टोलिक सारणियों को अक्सर विशिष्ट संचालन जैसे "गुणा और संचय" के लिए हार्ड-वायर्ड होती हैं। उनका उपयोग [[गतिशील प्रोग्रामिंग]] एल्गोरिदम के लिए भी किया जाता है, जिसका उपयोग डीएनए और प्रोटीन [[अनुक्रम विश्लेषण]] में किया जाता है। | ||
== स्थापत्य == | == स्थापत्य == | ||
एक सिस्टोलिक | एक सिस्टोलिक शृंखला में आमतौर पर प्राथमिक कंप्यूटिंग बिंदु (कंप्यूटर विज्ञान) के एक बड़े [[ अखंड प्रणाली |मोनोलिथ सिस्टम]] नेटवर्क (असतत गणित) होते हैं, जिन्हें किसी विशिष्ट एप्लीकेशन के लिए हार्डवेयर्ड या सॉफ़्टवेयर समनुरूप किया जा सकता है। बिंदु ्स आमतौर पर निश्चित और समान होते हैं, जबकि इंटरकनेक्ट प्रोग्राम करने योग्य होता है। इसके विपरीत अधिक सामान्य वेव फ्रंट प्रोसेसर परिष्कृत और व्यक्तिगत रूप से प्रोग्राम करने योग्य बिंदु ्स को नियोजित करते हैं जो शृंखला आकार और डिज़ाइन मापदंडों के आधार पर मोनोलिथिक हो सकते हैं या नहीं भी हो सकते हैं। अन्य अंतर यह है कि सिस्टोलिक सारणियाँ [[ एक समय का |समकालिक]] डेटा स्थानान्तरण पर निर्भर करती हैं, जबकि [[ wavefront |तरंगाग्र]] अतुल्यकालिक रूप से काम करने की प्रवृत्ति रखते हैं। | ||
अधिक सामान्य [[वॉन न्यूमैन वास्तुकला|वॉन न्यूमैन स्थापत्य]] के विपरीत, जहां प्रोग्राम निष्पादन सामान्य मेमोरी [[ पता स्थान | पता और स्थान]] में संग्रहीत निर्देशों की एक आलेख का पालन करता है और [[ CPU | सीपीयू]] के [[ कार्यक्रम गणक | प्रोग्राम गणक]] (पीसी) के नियंत्रण में अनुक्रमित होता है, सिस्टोलिक | अधिक सामान्य [[वॉन न्यूमैन वास्तुकला|वॉन न्यूमैन स्थापत्य]] के विपरीत, जहां प्रोग्राम निष्पादन सामान्य मेमोरी [[ पता स्थान |पता और स्थान]] में संग्रहीत निर्देशों की एक आलेख का पालन करता है और [[ CPU |सीपीयू]] के [[ कार्यक्रम गणक |प्रोग्राम गणक]] (पीसी) के नियंत्रण में अनुक्रमित होता है, सिस्टोलिक शृंखला के भीतर भिन्न-भिन्न बिंदु ्स नवीन आगमन से प्रवर्तित होते हैं, और सदैव डेटा को ठीक उसी तरह प्रोसेस करते हैं। प्रत्येक बिंदु के भीतर वास्तविक प्रसंस्करण हार्ड वायर्ड या ब्लॉक [[माइक्रोकोड]] हो सकता है, इस स्थिति में सामान्य बिंदु व्यक्तित्व को प्रोग्राम करने योग्य रोक किया जा सकता है। | ||
डेटा [[काउंटर (डिजिटल)|गणना (डिजिटल)]] के माध्यम से | डेटा [[काउंटर (डिजिटल)|गणना (डिजिटल)]] के माध्यम से संचालित डेटा-स्ट्रीम के साथ सिस्टोलिक शृंखला प्रतिमान, वॉन न्यूमैन स्थापत्य का समकक्ष है, जिसमें एक प्रोग्राम गणना के माध्यम से संचालित निर्देश-धारा है। क्योंकि एक सिस्टोलिक शृंखला आमतौर पर अनेक डेटा स्ट्रीम भेजता और प्राप्त करता है, और इन डेटा स्ट्रीम को उत्पन्न करने के लिए अनेक डेटा गणना की आवश्यकता होती है, यह [[डेटा समानता]] का समर्थन करता है। | ||
== लक्ष्य और लाभ == | == लक्ष्य और लाभ == | ||
सिस्टोलिक | सिस्टोलिक सारणियों का एक प्रमुख लाभ यह है कि सभी संकार्य डेटा और आंशिक परिणाम प्रोसेसर शृंखला के भीतर (प्रासंगिक ) संग्रहीत होते हैं। वॉन न्यूमैन या [[ हार्वर्ड वास्तुकला |हार्वर्ड स्थापत्य]] अनुक्रमिक यंत्रों के मामले में प्रत्येक संचालन के समय बाहरी बसों, मुख्य मेमोरी या आंतरिक कैश तक पहुंचने की कोई आवश्यकता नहीं है। अमदाहल सिद्धांत के माध्यम से निर्धारित समानांतर कंप्यूटिंग प्रदर्शन पर अनुक्रमिक सीमाएँ भी उसी तरह से लागू नहीं होती हैं, क्योंकि डेटा निर्भरता को प्रोग्राम योग्य बिंदु (कंप्यूटर विज्ञान) अन्तर्संबद्ध के माध्यम से नियंत्रित किया जाता है और अत्यधिक समानांतर डेटा प्रवाह के प्रबंधन में कोई अनुक्रमिक चरण नहीं होते हैं। | ||
सिस्टोलिक सारणियाँ इसलिए कृत्रिम आसूचना, छवि | सिस्टोलिक सारणियाँ इसलिए कृत्रिम आसूचना, छवि संसाधन , प्रतिरूप मान्यता, कंप्यूटर दृष्टि और अन्य कार्य जो पशु मस्तिष्क विशेष रूप से अच्छी तरह से करते हैं। सामान्य तौर पर वेवफ्रंट प्रोसेसर भी हार्डवेयर में स्व विन्यास तंत्रिका संबंधी नेट को लागू करके यंत्र अधिगम में बहुत अच्छा हो सकता है। इसलिए सिस्टोलिक सरणी निश्चित रूप से एसआईएसडी नहीं है। | ||
== वर्गीकरण विवाद == | == वर्गीकरण विवाद == | ||
जबकि सिस्टोलिक | जबकि सिस्टोलिक सारणियों को आधिकारिक तौर पर एकाधिक निर्देश एकल डेटा (एमआईएसडी) के रूप में वर्गीकृत किया जाता है, उनका वर्गीकरण कुछ हद तक समस्याग्रस्त होता है। क्योंकि इनपुट आमतौर पर एक सदिश होता है, इसलिए सिस्टोलिक शृंखला निश्चित रूप से एकल निर्देश एकल डेटा (एसआईएसडी) नहीं है। चूंकि इन [[इनपुट (कंप्यूटर विज्ञान)]] मानो को विलय कर दिया जाता है और परिणाम (एस) में जोड़ दिया जाता है और वे अपनी स्वतंत्रता को बनाए नहीं रखते हैं क्योंकि वे एक एसआईएसडी सदिश संसाधन इकाई में होते हैं, [[सरणी डेटा संरचना|शृंखला डेटा संरचना]] को इस तरह वर्गीकृत नहीं किया जा सकता है। नतीजतन, शृंखला को एमआईएमडी के रूप में वर्गीकृत नहीं किया जा सकता है, क्योंकि एमआईएसडी को छोटे एसआईएसडी और एसआईएमडी यंत्रों के संग्रह के रूप में देखा जा सकता है। | ||
अंत में, क्योंकि डेटा [[झुंड]] रूपांतरित हो जाता है क्योंकि यह | अंत में, क्योंकि डेटा [[झुंड|समूह]] रूपांतरित हो जाता है क्योंकि यह बिंदु (कंप्यूटर विज्ञान) से बिंदु तक शृंखला से गुजरता है, एक ही डेटा पर अनेक बिंदु काम नहीं कर रहे हैं, जो एमआईएसडी वर्गीकरण को एक [[मिथ्या नाम|अनुपयुक्त नाम]] बनाता है। एक सिस्टोलिक शृंखला को एमआईएसडी के रूप में योग्य नहीं होने का दूसरा कारण वही है जो इसे एसआईएसडी श्रेणी से अयोग्य घोषित करता है: इनपुट डेटा आमतौर पर एक सदिश होता है न कि एकल डेटा मान, हालांकि कोई यह तर्क दे सकता है कि कोई भी इनपुट सदिश डेटा एकल मद है। | ||
उपरोक्त सभी के बावजूद, सिस्टोलिक | उपरोक्त सभी के बावजूद, सिस्टोलिक सारणियों को अक्सर समानांतर कंप्यूटिंग और इंजीनियरिंग कक्षाओं में पाठ्य पुस्तकों में एमआईएसडी स्थापत्य के उत्कृष्ट उदाहरण के रूप में प्रस्तुत किया जाता है। अगर शृंखला को [[परमाणु संचालन|आणविक संचालन]] के रूप में बाहर से देखा जाता है तो इसे शायद एसएफएमयूडीएमईआर = एकल फ़ंक्शन, एकाधिक डेटा, विलीन किए गए परिणाम के रूप में वर्गीकृत किया जाना चाहिए। | ||
सिस्टोलिक सारणियाँ एक पूर्व-निर्धारित | सिस्टोलिक सारणियाँ एक पूर्व-निर्धारित संगणनात्मक प्रवाह लेखाचित्र का उपयोग करती हैं जो उनके बिंदुओं को जोड़ता है। कान प्रक्रिया नेटवर्क एक समान प्रवाह लेखाचित्र का उपयोग करते हैं, लेकिन सिस्टोलिक शृंखला में अवरोध-चरण में काम करने वाले बिंदुओं के माध्यम से प्रतिष्ठित होते हैं: कान नेटवर्क में प्रत्येक बिंदु के बीच ऍफ़आईऍफ़ओ पंक्तियां होती हैं। | ||
प्रत्येक | |||
== विस्तृत विवरण == | == विस्तृत विवरण == | ||
एक सिस्टोलिक | एक सिस्टोलिक शृंखला डेटा संसाधन इकाइयों की आव्यूह जैसी पंक्तियों से बनी होती है जिन्हें सेल कहा जाता है। डेटा संसाधन इकाई (डीपीयू) [[सेंट्रल प्रोसेसिंग यूनिट|सेंट्रल संसाधन इकाई]] (सीपीयू) के समान हैं, (प्रोग्राम गणना की सामान्य कमी को छोड़कर,<ref>The Paracel GeneMatcher series of systolic array processors do have a [[program counter]]. More complicated algorithms are implemented as a series of simple steps, with shifts specified in the instructions.</ref> चूंकि संचालन [[परिवहन ट्रिगर वास्तुकला|परिवहन ट्रिगर स्थापत्य]] है | ट्रांसपोर्ट-ट्रिगर, यानी डेटा ऑब्जेक्ट के आने से)। प्रत्येक सेल प्रसंस्करण के तुरंत बाद अपने पड़ोसियों के साथ सूचना साझा करता है। सिस्टोलिक शृंखला अक्सर आयताकार होती है जहां डेटा पड़ोसी डेटा संसाधन इकाइयों के बीच शृंखला में प्रवाहित होता है, अक्सर भिन्न-भिन्न दिशाओं में भिन्न-भिन्न डेटा प्रवाहित होता है। शृंखला के बंदरगाहों में प्रवेश करने और छोड़ने वाली डेटा धाराएं ऑटो-अनुक्रमण स्मृति इकाइयों, एएसएम के माध्यम से उत्पन्न होती हैं। प्रत्येक ASM में एक डेटा गणना (डिजिटल) शामिल होता है। [[ अंतः स्थापित प्रणाली |अंतः स्थापित प्रणाली]] में एक डेटा स्ट्रीम इनपुट और/या बाहरी स्रोत से आउटपुट भी हो सकता है। | ||
आव्यूह गुणन के लिए सिस्टोलिक [[ कलन विधि ]] का एक उदाहरण तैयार किया जा सकता है। एक [[मैट्रिक्स (गणित)|आव्यूह (गणित)]] को | आव्यूह गुणन के लिए सिस्टोलिक [[ कलन विधि |कलन विधि]] का एक उदाहरण तैयार किया जा सकता है। एक [[मैट्रिक्स (गणित)|आव्यूह (गणित)]] को शृंखला के शीर्ष से एक समय में एक पंक्ति में खिलाया जाता है और शृंखला के नीचे पारित किया जाता है, अन्य आव्यूह को शृंखला के बाईं ओर से एक कॉलम में खिलाया जाता है और बाईं ओर से गुजरता है सही। डमी मान तब तक पारित किए जाते हैं जब तक कि प्रत्येक प्रोसेसर ने एक पूरी पंक्ति और एक पूरा कॉलम नहीं देखा हो। इस बिंदु पर, गुणन का परिणाम शृंखला में संग्रहीत किया जाता है और अब एक समय में एक पंक्ति या एक स्तंभ का परिणामन किया जा सकता है, नीचे या शृंखला के पार।<ref>[http://web.cecs.pdx.edu/~mperkows/temp/May22/0020.Matrix-multiplication-systolic.pdf Systolic Array Matrix Multiplication]</ref> | ||
सिस्टोलिक सारणियाँ डेटा | सिस्टोलिक सारणियाँ डेटा संसाधन इकाइयों की सारणियाँ होती हैं जो एक जाल जैसी टोपोलॉजी में निकटतम पड़ोसी DPUs की एक छोटी संख्या से जुड़ी होती हैं। DPU उन डेटा पर संचालन का एक क्रम करते हैं जो उनके बीच प्रवाहित होते हैं। क्योंकि बीजगणितीय एल्गोरिदम के माध्यम से पारंपरिक सिस्टोलिक शृंखला संश्लेषण विधियों का अभ्यास किया गया है, केवल रैखिक पाइपों के साथ केवल समान शृंखला प्राप्त की जा सकती है, ताकि सभी डीपीयू में स्थापत्य समान हों। परिणाम यह है कि शास्त्रीय सिस्टोलिक सारणियों पर केवल नियमित डेटा निर्भरता वाले अनुप्रयोगों को लागू किया जा सकता है। सिंगल इंस्ट्रक्शन की तरह, मल्टीपल डेटा यंत्र, क्लॉक्ड सिस्टोलिक एरे प्रत्येक प्रोसेसर के साथ वैकल्पिक गणना करने वाले लॉक-स्टेप में गणना करते हैं। चरणों का संचार करें। लेकिन DPUs के बीच अतुल्यकालिक हैंडशेक के साथ सिस्टोलिक सारणियों को वेवफ्रंट सारणियाँ कहा जाता है। | ||
एक प्रसिद्ध सिस्टोलिक ऐरे कार्नेगी मेलॉन यूनिवर्सिटी का [[iWarp]] प्रोसेसर है, जिसे इंटेल के माध्यम से | एक प्रसिद्ध सिस्टोलिक ऐरे कार्नेगी मेलॉन यूनिवर्सिटी का [[iWarp]] प्रोसेसर है, जिसे इंटेल के माध्यम से निर्मित किया गया है। एक iWarp सिस्टम में दोनों दिशाओं में जाने वाली डेटा बसों से जुड़ा एक रैखिक शृंखला प्रोसेसर होता है। | ||
== इतिहास == | == इतिहास == | ||
सिस्टोलिक | सिस्टोलिक सारणियों (वेवफ्रंट प्रोसेसर के रूप में भी जाना जाता है), को प्रथम बार एच.टी. कुंग और चार्ल्स ई. लीजर्सन के माध्यम से वर्णित किया गया था, जिन्होंने 1979 में सिस्टोलिक शृंखला का वर्णन करने वाला पहला पेपर प्रकाशित किया था। हालांकि, इसी तरह की तकनीक का उपयोग करने वाली प्रथम यंत्र कोलोसस कंप्यूटर थी। 1944. | ||
== एप्लीकेशन उदाहरण == | == एप्लीकेशन उदाहरण == | ||
Line 48: | Line 46: | ||
y = ( \ldots ( ( (a_n \cdot x + a_{n-1}) \cdot x + a_{n-2}) \cdot x + a_{n-3}) \cdot x + \ldots + a_1) \cdot x + a_0. | y = ( \ldots ( ( (a_n \cdot x + a_{n-1}) \cdot x + a_{n-2}) \cdot x + a_{n-3}) \cdot x + \ldots + a_1) \cdot x + a_0. | ||
</math> | </math> | ||
एक रैखिक सिस्टोलिक | एक रैखिक सिस्टोलिक शृंखला जिसमें प्रोसेसर जोड़े में व्यवस्थित होते हैं: एक इसके इनपुट को गुणा करता है <math>x</math> और परिणाम को दाईं ओर पारितकरता है, अगला जोड़ता है <math>a_j</math> और परिणाम को दाईं ओर पारितकरता है। | ||
== फायदे और नुकसान == | == फायदे और नुकसान == | ||
Line 58: | Line 56: | ||
* अत्यधिक विशिष्ट, कस्टम हार्डवेयर की आवश्यकता होती है और अक्सर एप्लिकेशन विशिष्ट होती है। | * अत्यधिक विशिष्ट, कस्टम हार्डवेयर की आवश्यकता होती है और अक्सर एप्लिकेशन विशिष्ट होती है। | ||
* व्यापक रूप से लागू नहीं किया गया | * व्यापक रूप से लागू नहीं किया गया | ||
* कार्यक्रमों और एल्गोरिदम का सीमित कोड आधार। (सभी एल्गोरिदम को सिस्टोलिक | * कार्यक्रमों और एल्गोरिदम का सीमित कोड आधार। (सभी एल्गोरिदम को सिस्टोलिक सारणियों के रूप में लागू नहीं किया जा सकता है। ऐसे एल्गोरिदम को सिस्टोलिक शृंखला पर मैप करने के लिए अक्सर ट्रिक्स की आवश्यकता होती है।) | ||
== कार्यान्वयन == | == कार्यान्वयन == | ||
* [[सिस्को]] पीएक्सएफ नेटवर्क प्रोसेसर आंतरिक रूप से सिस्टोलिक | * [[सिस्को]] पीएक्सएफ नेटवर्क प्रोसेसर आंतरिक रूप से सिस्टोलिक शृंखला के रूप में व्यवस्थित है।<ref>{{cite web|title=सिस्को 10000 सीरीज राउटर परफॉर्मेंस रूटिंग इंजन इंस्टालेशन|url=https://www.cisco.com/en/US/products/hw/routers/ps133/prod_installation_guide09186a0080525aba.html#wp48065|access-date=3 August 2020}}</ref> | ||
* Google की [[Tensor Processing Unit]] भी एक सिस्टोलिक | * Google की [[Tensor Processing Unit]] भी एक सिस्टोलिक शृंखला के आसपास डिज़ाइन की गई है। | ||
* पैरासेल FDF4T टेस्टफाइंडर टेक्स्ट सर्च सिस्टम<ref name="FDF4">{{cite web|title=पैरासेल के बारे में|url=http://brandprosgroup.com/pages/first/websites/paracel/data/html/about_paracel2.html|website=brandprosgroup.com|publisher=Paracel|access-date=4 May 2018}}</ref> | * पैरासेल FDF4T टेस्टफाइंडर टेक्स्ट सर्च सिस्टम<ref name="FDF4">{{cite web|title=पैरासेल के बारे में|url=http://brandprosgroup.com/pages/first/websites/paracel/data/html/about_paracel2.html|website=brandprosgroup.com|publisher=Paracel|access-date=4 May 2018}}</ref> | ||
* Paracel FDF4G GeneMatcher जैविक (डीएनए और प्रोटीन) खोज प्रणाली | * Paracel FDF4G GeneMatcher जैविक (डीएनए और प्रोटीन) खोज प्रणाली | ||
* [[Amazon Web Services]] पर Inferentia चिप<ref>{{cite web|title=उच्च प्रदर्शन और लागत प्रभावी मशीन सीखने के अनुमान के लिए Amazon SageMaker में Inf1 उदाहरणों की उपलब्धता की घोषणा करना|url=https://aws.amazon.com/blogs/aws/amazon-ecs-now-supports-ec2-inf1-instances/|access-date=15 August 2020}}</ref> | * [[Amazon Web Services]] पर Inferentia चिप<ref>{{cite web|title=उच्च प्रदर्शन और लागत प्रभावी मशीन सीखने के अनुमान के लिए Amazon SageMaker में Inf1 उदाहरणों की उपलब्धता की घोषणा करना|url=https://aws.amazon.com/blogs/aws/amazon-ecs-now-supports-ec2-inf1-instances/|access-date=15 August 2020}}</ref> | ||
*[[MIT Eyeriss]] दृढ़ तंत्रिका नेटवर्क के लिए एक सिस्टोलिक | *[[MIT Eyeriss]] दृढ़ तंत्रिका नेटवर्क के लिए एक सिस्टोलिक शृंखला त्वरक है।<ref>{{Cite web|title=आईरिस प्रोजेक्ट|url=http://eyeriss.mit.edu/|access-date=2021-02-21|website=eyeriss.mit.edu}}</ref><ref>{{Cite journal|last1=Chen|first1=Yu-Hsin|last2=Emer|first2=Joel|last3=Sze|first3=Vivienne|author3-link=Vivienne Sze|date=2016-10-12|title=Eyeriss: a spatial architecture for energy-efficient dataflow for convolutional neural networks|url=https://dl.acm.org/doi/10.1145/3007787.3001177|journal=ACM SIGARCH Computer Architecture News|language=en|volume=44|issue=3|pages=367–379|doi=10.1145/3007787.3001177|s2cid=3291270 |issn=0163-5964}}</ref> | ||
== यह भी देखें == | == यह भी देखें == | ||
* एकाधिक निर्देश, एकल डेटा - एकाधिक निर्देश एकल डेटा, उदाहरण: सिस्टोलिक | * एकाधिक निर्देश, एकल डेटा - एकाधिक निर्देश एकल डेटा, उदाहरण: सिस्टोलिक शृंखला | ||
* iWarp - सिस्टोलिक [[ऐ]]रे कंप्यूटर, VLSI, Intel/CMU | * iWarp - सिस्टोलिक [[ऐ]]रे कंप्यूटर, VLSI, Intel/CMU | ||
* WARP (सिस्टोलिक ऐरे) - सिस्टोलिक ऐरे कंप्यूटर, GE/CMU | * WARP (सिस्टोलिक ऐरे) - सिस्टोलिक ऐरे कंप्यूटर, GE/CMU | ||
* टेन्सर | * टेन्सर संसाधन इकाई - एआई त्वरक [[एएसआईसी]] | ||
==टिप्पणियाँ== | ==टिप्पणियाँ== |
Revision as of 22:13, 11 June 2023
समांतर कंप्यूटिंग कंप्यूटर स्थापत्य में एक सिस्टोलिक शृंखला दृढ़ता युग्मित डाटा संसाधन इकाई (डीपीयू) का एक सजातीय नेटवर्क(असतत गणित) है जिसे सेल या बिंदु (कंप्यूटर विज्ञान) कहा जाता है। प्रत्येक बिंदु या डीपीयू स्वतंत्र रूप से अपने अपस्ट्रीम सह्योगियों से प्राप्त डेटा के एक फंक्शन के रूप में आंशिक परिणाम की गणना करता है, परिणाम को अपने भीतर संग्रहीत करता है और इसे डाउनस्ट्रीम पारित करता है। सिस्टोलिक सारणियों का प्रथम बार उपयोग कोलोसस में किया गया था, जो द्वितीय विश्व युद्ध के समय जर्मन लॉरेंज सिफर सिफर को समाप्त के लिए प्रयुक्त किया जाने वाला एक प्रारंभिक कंप्यूटर था।[1] कोलोसस की वर्गीकृत प्रकृति के कारण, वे स्वतंत्र रूप से एचटी कुंग और चार्ल्स लीजरसन के माध्यम से आविष्कार या फिर से खोजे गए थे, जिन्होंने बैंडेड मैट्रिसेस के लिए अनेक घने रैखिक बीजगणित गणनाओं (आव्यूह परिणाम, रैखिक समीकरणों की प्रणाली को हल करना, एलयू अपघटन, आदि) के लिए सारणियों का वर्णन किया था। प्रारंभिक अनुप्रयोगों में पूर्णांकों और बहुपदों के अधिकतम सामान्य विभाजकों की गणना करना शामिल है।[2] उन्हें कभी-कभी फ्लिन की वर्गीकरण के तहत एकाधिक-निर्देश एकल-डेटा (एमआईएसडी) स्थापत्य के रूप में वर्गीकृत किया जाता है, लेकिन यह वर्गीकरण संशयात्मक है क्योंकि फ्लिन की चार श्रेणियों में से किसी से सिस्टोलिक शृंखला को भिन्न करने के लिए एक दृढ़ तर्क दिया जा सकता है: एसआईएसडी, एसआईएमडी, एमआईएसडी, एमआईएमडी, जैसा कि इस आलेख में बाद में विचार की गई है।
समानांतर इनपुट डेटा यंत्रस्थ माइक्रोप्रोसेसर बिंदु ्स के एक नेटवर्क के माध्यम से प्रवाहित होता है, जो एक व्युत्पन्न परिणाम में इनपुट डेटा को संयोजित, संसाधित, विलय एल्गोरिथ्म या अलग एल्गोरिथ्म करता है। क्योंकि एक सिस्टोलिक शृंखला के माध्यम से डेटा का तरंग जैसा प्रसार मानव संचार प्रणाली की नाडी जैसा दिखता है, सिस्टोलिक नाम चिकित्सा शब्दावली से लिया गया था। यह नाम हृदय के माध्यम से रक्त के नियमित स्पंदित के सादृश्य के रूप में सिस्टोल से लिया गया है।
अनुप्रयोग
बड़े पैमाने पर समानांतर कंप्यूटिंग एकीकरण, संवलन, सहसंबंध, आव्यूह गुणन या डेटा पृथक्करण कार्यों को करने के लिए सिस्टोलिक सारणियों को अक्सर विशिष्ट संचालन जैसे "गुणा और संचय" के लिए हार्ड-वायर्ड होती हैं। उनका उपयोग गतिशील प्रोग्रामिंग एल्गोरिदम के लिए भी किया जाता है, जिसका उपयोग डीएनए और प्रोटीन अनुक्रम विश्लेषण में किया जाता है।
स्थापत्य
एक सिस्टोलिक शृंखला में आमतौर पर प्राथमिक कंप्यूटिंग बिंदु (कंप्यूटर विज्ञान) के एक बड़े मोनोलिथ सिस्टम नेटवर्क (असतत गणित) होते हैं, जिन्हें किसी विशिष्ट एप्लीकेशन के लिए हार्डवेयर्ड या सॉफ़्टवेयर समनुरूप किया जा सकता है। बिंदु ्स आमतौर पर निश्चित और समान होते हैं, जबकि इंटरकनेक्ट प्रोग्राम करने योग्य होता है। इसके विपरीत अधिक सामान्य वेव फ्रंट प्रोसेसर परिष्कृत और व्यक्तिगत रूप से प्रोग्राम करने योग्य बिंदु ्स को नियोजित करते हैं जो शृंखला आकार और डिज़ाइन मापदंडों के आधार पर मोनोलिथिक हो सकते हैं या नहीं भी हो सकते हैं। अन्य अंतर यह है कि सिस्टोलिक सारणियाँ समकालिक डेटा स्थानान्तरण पर निर्भर करती हैं, जबकि तरंगाग्र अतुल्यकालिक रूप से काम करने की प्रवृत्ति रखते हैं।
अधिक सामान्य वॉन न्यूमैन स्थापत्य के विपरीत, जहां प्रोग्राम निष्पादन सामान्य मेमोरी पता और स्थान में संग्रहीत निर्देशों की एक आलेख का पालन करता है और सीपीयू के प्रोग्राम गणक (पीसी) के नियंत्रण में अनुक्रमित होता है, सिस्टोलिक शृंखला के भीतर भिन्न-भिन्न बिंदु ्स नवीन आगमन से प्रवर्तित होते हैं, और सदैव डेटा को ठीक उसी तरह प्रोसेस करते हैं। प्रत्येक बिंदु के भीतर वास्तविक प्रसंस्करण हार्ड वायर्ड या ब्लॉक माइक्रोकोड हो सकता है, इस स्थिति में सामान्य बिंदु व्यक्तित्व को प्रोग्राम करने योग्य रोक किया जा सकता है।
डेटा गणना (डिजिटल) के माध्यम से संचालित डेटा-स्ट्रीम के साथ सिस्टोलिक शृंखला प्रतिमान, वॉन न्यूमैन स्थापत्य का समकक्ष है, जिसमें एक प्रोग्राम गणना के माध्यम से संचालित निर्देश-धारा है। क्योंकि एक सिस्टोलिक शृंखला आमतौर पर अनेक डेटा स्ट्रीम भेजता और प्राप्त करता है, और इन डेटा स्ट्रीम को उत्पन्न करने के लिए अनेक डेटा गणना की आवश्यकता होती है, यह डेटा समानता का समर्थन करता है।
लक्ष्य और लाभ
सिस्टोलिक सारणियों का एक प्रमुख लाभ यह है कि सभी संकार्य डेटा और आंशिक परिणाम प्रोसेसर शृंखला के भीतर (प्रासंगिक ) संग्रहीत होते हैं। वॉन न्यूमैन या हार्वर्ड स्थापत्य अनुक्रमिक यंत्रों के मामले में प्रत्येक संचालन के समय बाहरी बसों, मुख्य मेमोरी या आंतरिक कैश तक पहुंचने की कोई आवश्यकता नहीं है। अमदाहल सिद्धांत के माध्यम से निर्धारित समानांतर कंप्यूटिंग प्रदर्शन पर अनुक्रमिक सीमाएँ भी उसी तरह से लागू नहीं होती हैं, क्योंकि डेटा निर्भरता को प्रोग्राम योग्य बिंदु (कंप्यूटर विज्ञान) अन्तर्संबद्ध के माध्यम से नियंत्रित किया जाता है और अत्यधिक समानांतर डेटा प्रवाह के प्रबंधन में कोई अनुक्रमिक चरण नहीं होते हैं।
सिस्टोलिक सारणियाँ इसलिए कृत्रिम आसूचना, छवि संसाधन , प्रतिरूप मान्यता, कंप्यूटर दृष्टि और अन्य कार्य जो पशु मस्तिष्क विशेष रूप से अच्छी तरह से करते हैं। सामान्य तौर पर वेवफ्रंट प्रोसेसर भी हार्डवेयर में स्व विन्यास तंत्रिका संबंधी नेट को लागू करके यंत्र अधिगम में बहुत अच्छा हो सकता है। इसलिए सिस्टोलिक सरणी निश्चित रूप से एसआईएसडी नहीं है।
वर्गीकरण विवाद
जबकि सिस्टोलिक सारणियों को आधिकारिक तौर पर एकाधिक निर्देश एकल डेटा (एमआईएसडी) के रूप में वर्गीकृत किया जाता है, उनका वर्गीकरण कुछ हद तक समस्याग्रस्त होता है। क्योंकि इनपुट आमतौर पर एक सदिश होता है, इसलिए सिस्टोलिक शृंखला निश्चित रूप से एकल निर्देश एकल डेटा (एसआईएसडी) नहीं है। चूंकि इन इनपुट (कंप्यूटर विज्ञान) मानो को विलय कर दिया जाता है और परिणाम (एस) में जोड़ दिया जाता है और वे अपनी स्वतंत्रता को बनाए नहीं रखते हैं क्योंकि वे एक एसआईएसडी सदिश संसाधन इकाई में होते हैं, शृंखला डेटा संरचना को इस तरह वर्गीकृत नहीं किया जा सकता है। नतीजतन, शृंखला को एमआईएमडी के रूप में वर्गीकृत नहीं किया जा सकता है, क्योंकि एमआईएसडी को छोटे एसआईएसडी और एसआईएमडी यंत्रों के संग्रह के रूप में देखा जा सकता है।
अंत में, क्योंकि डेटा समूह रूपांतरित हो जाता है क्योंकि यह बिंदु (कंप्यूटर विज्ञान) से बिंदु तक शृंखला से गुजरता है, एक ही डेटा पर अनेक बिंदु काम नहीं कर रहे हैं, जो एमआईएसडी वर्गीकरण को एक अनुपयुक्त नाम बनाता है। एक सिस्टोलिक शृंखला को एमआईएसडी के रूप में योग्य नहीं होने का दूसरा कारण वही है जो इसे एसआईएसडी श्रेणी से अयोग्य घोषित करता है: इनपुट डेटा आमतौर पर एक सदिश होता है न कि एकल डेटा मान, हालांकि कोई यह तर्क दे सकता है कि कोई भी इनपुट सदिश डेटा एकल मद है।
उपरोक्त सभी के बावजूद, सिस्टोलिक सारणियों को अक्सर समानांतर कंप्यूटिंग और इंजीनियरिंग कक्षाओं में पाठ्य पुस्तकों में एमआईएसडी स्थापत्य के उत्कृष्ट उदाहरण के रूप में प्रस्तुत किया जाता है। अगर शृंखला को आणविक संचालन के रूप में बाहर से देखा जाता है तो इसे शायद एसएफएमयूडीएमईआर = एकल फ़ंक्शन, एकाधिक डेटा, विलीन किए गए परिणाम के रूप में वर्गीकृत किया जाना चाहिए।
सिस्टोलिक सारणियाँ एक पूर्व-निर्धारित संगणनात्मक प्रवाह लेखाचित्र का उपयोग करती हैं जो उनके बिंदुओं को जोड़ता है। कान प्रक्रिया नेटवर्क एक समान प्रवाह लेखाचित्र का उपयोग करते हैं, लेकिन सिस्टोलिक शृंखला में अवरोध-चरण में काम करने वाले बिंदुओं के माध्यम से प्रतिष्ठित होते हैं: कान नेटवर्क में प्रत्येक बिंदु के बीच ऍफ़आईऍफ़ओ पंक्तियां होती हैं।
विस्तृत विवरण
एक सिस्टोलिक शृंखला डेटा संसाधन इकाइयों की आव्यूह जैसी पंक्तियों से बनी होती है जिन्हें सेल कहा जाता है। डेटा संसाधन इकाई (डीपीयू) सेंट्रल संसाधन इकाई (सीपीयू) के समान हैं, (प्रोग्राम गणना की सामान्य कमी को छोड़कर,[3] चूंकि संचालन परिवहन ट्रिगर स्थापत्य है | ट्रांसपोर्ट-ट्रिगर, यानी डेटा ऑब्जेक्ट के आने से)। प्रत्येक सेल प्रसंस्करण के तुरंत बाद अपने पड़ोसियों के साथ सूचना साझा करता है। सिस्टोलिक शृंखला अक्सर आयताकार होती है जहां डेटा पड़ोसी डेटा संसाधन इकाइयों के बीच शृंखला में प्रवाहित होता है, अक्सर भिन्न-भिन्न दिशाओं में भिन्न-भिन्न डेटा प्रवाहित होता है। शृंखला के बंदरगाहों में प्रवेश करने और छोड़ने वाली डेटा धाराएं ऑटो-अनुक्रमण स्मृति इकाइयों, एएसएम के माध्यम से उत्पन्न होती हैं। प्रत्येक ASM में एक डेटा गणना (डिजिटल) शामिल होता है। अंतः स्थापित प्रणाली में एक डेटा स्ट्रीम इनपुट और/या बाहरी स्रोत से आउटपुट भी हो सकता है।
आव्यूह गुणन के लिए सिस्टोलिक कलन विधि का एक उदाहरण तैयार किया जा सकता है। एक आव्यूह (गणित) को शृंखला के शीर्ष से एक समय में एक पंक्ति में खिलाया जाता है और शृंखला के नीचे पारित किया जाता है, अन्य आव्यूह को शृंखला के बाईं ओर से एक कॉलम में खिलाया जाता है और बाईं ओर से गुजरता है सही। डमी मान तब तक पारित किए जाते हैं जब तक कि प्रत्येक प्रोसेसर ने एक पूरी पंक्ति और एक पूरा कॉलम नहीं देखा हो। इस बिंदु पर, गुणन का परिणाम शृंखला में संग्रहीत किया जाता है और अब एक समय में एक पंक्ति या एक स्तंभ का परिणामन किया जा सकता है, नीचे या शृंखला के पार।[4] सिस्टोलिक सारणियाँ डेटा संसाधन इकाइयों की सारणियाँ होती हैं जो एक जाल जैसी टोपोलॉजी में निकटतम पड़ोसी DPUs की एक छोटी संख्या से जुड़ी होती हैं। DPU उन डेटा पर संचालन का एक क्रम करते हैं जो उनके बीच प्रवाहित होते हैं। क्योंकि बीजगणितीय एल्गोरिदम के माध्यम से पारंपरिक सिस्टोलिक शृंखला संश्लेषण विधियों का अभ्यास किया गया है, केवल रैखिक पाइपों के साथ केवल समान शृंखला प्राप्त की जा सकती है, ताकि सभी डीपीयू में स्थापत्य समान हों। परिणाम यह है कि शास्त्रीय सिस्टोलिक सारणियों पर केवल नियमित डेटा निर्भरता वाले अनुप्रयोगों को लागू किया जा सकता है। सिंगल इंस्ट्रक्शन की तरह, मल्टीपल डेटा यंत्र, क्लॉक्ड सिस्टोलिक एरे प्रत्येक प्रोसेसर के साथ वैकल्पिक गणना करने वाले लॉक-स्टेप में गणना करते हैं। चरणों का संचार करें। लेकिन DPUs के बीच अतुल्यकालिक हैंडशेक के साथ सिस्टोलिक सारणियों को वेवफ्रंट सारणियाँ कहा जाता है। एक प्रसिद्ध सिस्टोलिक ऐरे कार्नेगी मेलॉन यूनिवर्सिटी का iWarp प्रोसेसर है, जिसे इंटेल के माध्यम से निर्मित किया गया है। एक iWarp सिस्टम में दोनों दिशाओं में जाने वाली डेटा बसों से जुड़ा एक रैखिक शृंखला प्रोसेसर होता है।
इतिहास
सिस्टोलिक सारणियों (वेवफ्रंट प्रोसेसर के रूप में भी जाना जाता है), को प्रथम बार एच.टी. कुंग और चार्ल्स ई. लीजर्सन के माध्यम से वर्णित किया गया था, जिन्होंने 1979 में सिस्टोलिक शृंखला का वर्णन करने वाला पहला पेपर प्रकाशित किया था। हालांकि, इसी तरह की तकनीक का उपयोग करने वाली प्रथम यंत्र कोलोसस कंप्यूटर थी। 1944.
एप्लीकेशन उदाहरण
बहुपद मूल्यांकन
बहुपद के मूल्यांकन के लिए हॉर्नर का नियम है:
एक रैखिक सिस्टोलिक शृंखला जिसमें प्रोसेसर जोड़े में व्यवस्थित होते हैं: एक इसके इनपुट को गुणा करता है और परिणाम को दाईं ओर पारितकरता है, अगला जोड़ता है और परिणाम को दाईं ओर पारितकरता है।
फायदे और नुकसान
पेशेवरों
- सामान्य प्रयोजन के प्रोसेसर की तुलना में तेज़
- मापनीय
दोष
- महँगा, पैमाने की कम मितव्ययता के कारण
- अत्यधिक विशिष्ट, कस्टम हार्डवेयर की आवश्यकता होती है और अक्सर एप्लिकेशन विशिष्ट होती है।
- व्यापक रूप से लागू नहीं किया गया
- कार्यक्रमों और एल्गोरिदम का सीमित कोड आधार। (सभी एल्गोरिदम को सिस्टोलिक सारणियों के रूप में लागू नहीं किया जा सकता है। ऐसे एल्गोरिदम को सिस्टोलिक शृंखला पर मैप करने के लिए अक्सर ट्रिक्स की आवश्यकता होती है।)
कार्यान्वयन
- सिस्को पीएक्सएफ नेटवर्क प्रोसेसर आंतरिक रूप से सिस्टोलिक शृंखला के रूप में व्यवस्थित है।[5]
- Google की Tensor Processing Unit भी एक सिस्टोलिक शृंखला के आसपास डिज़ाइन की गई है।
- पैरासेल FDF4T टेस्टफाइंडर टेक्स्ट सर्च सिस्टम[6]
- Paracel FDF4G GeneMatcher जैविक (डीएनए और प्रोटीन) खोज प्रणाली
- Amazon Web Services पर Inferentia चिप[7]
- MIT Eyeriss दृढ़ तंत्रिका नेटवर्क के लिए एक सिस्टोलिक शृंखला त्वरक है।[8][9]
यह भी देखें
- एकाधिक निर्देश, एकल डेटा - एकाधिक निर्देश एकल डेटा, उदाहरण: सिस्टोलिक शृंखला
- iWarp - सिस्टोलिक ऐरे कंप्यूटर, VLSI, Intel/CMU
- WARP (सिस्टोलिक ऐरे) - सिस्टोलिक ऐरे कंप्यूटर, GE/CMU
- टेन्सर संसाधन इकाई - एआई त्वरक एएसआईसी
टिप्पणियाँ
- ↑ Colossus - The Greatest Secret in the History of Computing on YouTube
- ↑ http://www.eecs.harvard.edu/~htk/publication/1984-ieeetoc-brent-kung.pdf[bare URL PDF]
- ↑ The Paracel GeneMatcher series of systolic array processors do have a program counter. More complicated algorithms are implemented as a series of simple steps, with shifts specified in the instructions.
- ↑ Systolic Array Matrix Multiplication
- ↑ "सिस्को 10000 सीरीज राउटर परफॉर्मेंस रूटिंग इंजन इंस्टालेशन". Retrieved 3 August 2020.
- ↑ "पैरासेल के बारे में". brandprosgroup.com. Paracel. Retrieved 4 May 2018.
- ↑ "उच्च प्रदर्शन और लागत प्रभावी मशीन सीखने के अनुमान के लिए Amazon SageMaker में Inf1 उदाहरणों की उपलब्धता की घोषणा करना". Retrieved 15 August 2020.
- ↑ "आईरिस प्रोजेक्ट". eyeriss.mit.edu. Retrieved 2021-02-21.
- ↑ Chen, Yu-Hsin; Emer, Joel; Sze, Vivienne (2016-10-12). "Eyeriss: a spatial architecture for energy-efficient dataflow for convolutional neural networks". ACM SIGARCH Computer Architecture News (in English). 44 (3): 367–379. doi:10.1145/3007787.3001177. ISSN 0163-5964. S2CID 3291270.
संदर्भ
This article includes a list of general references, but it lacks sufficient corresponding inline citations. (April 2011) (Learn how and when to remove this template message) |
- H. T. Kung, C. E. Leiserson: Algorithms for VLSI processor arrays; in: C. Mead, L. Conway (eds.): Introduction to VLSI Systems; Addison-Wesley, 1979
- S. Y. Kung: VLSI Array Processors; Prentice-Hall, Inc., 1988
- N. Petkov: Systolic Parallel Processing; North Holland Publishing Co, 1992