लिनपैक बेंचमार्क: Difference between revisions

From Vigyanwiki
No edit summary
No edit summary
Line 147: Line 147:
|isbn = 0897914597
|isbn = 0897914597
|s2cid = 18046345
|s2cid = 18046345
}}</ref> एचपीएलइनपैक में समस्या का आकार n '''उतना बड़ा बनाया जा सकता है जितना मशीन के परफॉरमेंस परिणामों को अनुकूलित करने के लिए आवश्यक हो। एक बार फिर, उपयोग किए गए एल्गोरिदम की स्वतंत्रता के साथ, 2/3n³ + 2n² को ऑपरेशन गिनती के रूप में लिया जाएगा। स्ट्रैसेन एल्गो'''रिथ्म के उपयोग की अनुमति नहीं है क्योंकि यह वास्तविक निष्पादन दर को विकृत करता है।<ref>{{cite web |url = http://www.netlib.org/utk/people/JackDongarra/faq-linpack.html#_Can_I_use
}}</ref> एचपीएलइनपैक में समस्या का आकार n जितना बड़ा माना जा सकता है क्योकि मशीन के परफॉरमेंस परिणामों को अनुकूलित करने के लिए यह आवश्यक होता है। एक बार उपयोग किए गए एल्गोरिदम के साथ 2/3n³ + 2n² को एक ऑपरेशन गणना के रूप में माना जाता है। जिसमे स्ट्रैसेन एल्गोरिथ्म के उपयोग की स्वीकृति नहीं होती है क्योंकि यह वास्तविक निष्पादन दर को डिस्टॉर्ट करता है।<ref>{{cite web |url = http://www.netlib.org/utk/people/JackDongarra/faq-linpack.html#_Can_I_use
|title = LINPACK FAQ - Can I use Strassen's Method when doing the matrix multiples in the HPL benchmark or for the Top500 run?
|title = LINPACK FAQ - Can I use Strassen's Method when doing the matrix multiples in the HPL benchmark or for the Top500 run?
|accessdate = 2015-02-10
|accessdate = 2015-02-10
}}</ref> सटीकता ऐसी होनी चाहिए कि निम्नलिखित अभिव्यक्ति संतुष्ट हो:
}}</ref> सामान्यतः एक्यूरेसी ऐसी होनी चाहिए कि जिससे निम्नलिखित एक्सप्रेशन संतुष्ट हो:


<math>{\lVert Ax-b\rVert\over \lVert A\rVert \lVert x\rVert n \epsilon} \leq O(1)</math>,  
<math>{\lVert Ax-b\rVert\over \lVert A\rVert \lVert x\rVert n \epsilon} \leq O(1)</math>,  


कहाँ <math>\epsilon</math> मशीन की परिशुद्धता है, और n समस्या का आकार है,<ref>{{cite web
जहाँ <math>\epsilon</math> मशीन प्रिसिशन, n समस्या का आकार,<ref>{{cite web
|url = http://www.netlib.org/utk/people/JackDongarra/faq-linpack.html#_Toc27885722
|url = http://www.netlib.org/utk/people/JackDongarra/faq-linpack.html#_Toc27885722
|title = LINPACK FAQ - To what accuracy must be the solution conform?
|title = LINPACK FAQ - To what accuracy must be the solution conform?
|accessdate = 2015-02-10
|accessdate = 2015-02-10
}}</ref> <math>\lVert \cdot \rVert</math> [[मैट्रिक्स मानदंड]] है और <math>O(1)</math> [[ बिग-ओ संकेतन |बिग-ओ संकेतन]] से मेल खाता है।
}}</ref> <math>\lVert \cdot \rVert</math> [[मैट्रिक्स मानदंड|मैट्रिक्स बेंचमार्क]] और <math>O(1)</math> [[ बिग-ओ संकेतन |बिग-ओ नोटेशन]] है।


प्रत्येक कंप्यूटर सिस्टम के लिए, निम्नलिखित मात्राएँ रिपोर्ट की जाती हैं:<ref name="hplpaper"/>
प्रत्येक कंप्यूटर सिस्टम के लिए निम्नलिखित विशेषताएँ आवश्यक हो सकती हैं:<ref name="hplpaper"/>


* आर<sub>max</sub>: किसी मशीन पर चलने वाली सबसे बड़ी समस्या के लिए Gफ्लॉप में परफॉरमेंस।
* R<sub>max</sub>: किसी मशीन पर कार्यान्वित सबसे बड़ी समस्या के लिए जीफ्लॉप में परफॉरमेंस।
* एन<sub>max</sub>: किसी मशीन पर चलने वाली सबसे बड़ी समस्या का आकार।
* N<sub>max</sub>: किसी मशीन पर कार्यान्वित सबसे बड़ी समस्या का आकार।
* एन<sub>1/2</sub>: वह आकार जहां आधा आरमैक्स निष्पादन दर हासिल की जाती है।
* N<sub>1/2</sub>: वह आकार जहां R<sub>max</sub> निष्पादन दर को प्राप्त किया जा सकता है।
* आर<sub>peak</sub>: मशीन के लिए सैद्धांतिक शिखर परफॉरमेंस Gफ्लॉप।
* R<sub>peak</sub>: मशीन के लिए सैद्धांतिक पीक-परफॉरमेंस जीफ्लॉप।


इन परिणामों का उपयोग दुनिया के सबसे शक्तिशाली कंप्यूटरों के साथ, वर्ष में दो बार TOP500 सूची संकलित करने के लिए किया जाता है।<ref name="top500">{{cite web |title = The Linpack Benchmark, TOP500 Supercomputing Sites
इन परिणामों का उपयोग विश्व के सबसे प्रभावशाली कंप्यूटरों के साथ वर्ष में दो बार टॉप-500 सूची को संकलित करने के लिए किया जाता है।<ref name="top500">{{cite web |title = The Linpack Benchmark, TOP500 Supercomputing Sites
|url = http://www.top500.org/project/linpack
|url = http://www.top500.org/project/linpack
|accessdate = 2015-02-10
|accessdate = 2015-02-10
}}</ref> TOP500 इन्हें [[ डबल-परिशुद्धता फ़्लोटिंग-पॉइंट प्रारूप |डबल-परिशुद्धता फ़्लोटिंग-पॉइंट प्रारूप]] (FP64) में मापता है।
}}</ref> सामान्यतः टॉप-500 सूची मे इसका उपयोग [[ डबल-परिशुद्धता फ़्लोटिंग-पॉइंट प्रारूप |डबल-प्रिसिशन फ़्लोटिंग-पॉइंट फॉर्मेट]] (एफपी-64) के रूप मे किया जाता है।


==लिनपैक बेंचमार्क [[कार्यान्वयन]]==
==लिनपैक बेंचमार्क [[कार्यान्वयन]]==
पिछला अनुभाग बेंचमार्क के लिए बुनियादी नियमों का वर्णन करता है। कार्यक्रम का वास्तविक कार्यान्वयन भिन्न हो सकता है, कुछ उदाहरण फोरट्रान, सी<ref>{{cite web|title = Linpack benchmark program in C
पिछला सेक्शन (अनुभाग) बेंचमार्क के लिए मूल नियमों का वर्णन करता है। जिसमे प्रोग्राम का वास्तविक कार्यान्वयन भी भिन्न हो सकता है। इसके कुछ उदाहरण फोरट्रान, सी<ref>{{cite web|title = Linpack benchmark program in C
|accessdate = 2015-02-10
|accessdate = 2015-02-10
|url = http://www.netlib.org/benchmark/linpackc
|url = http://www.netlib.org/benchmark/linpackc
}}</ref> या [[जावा (प्रोग्रामिंग भाषा)|जावा]] में उपलब्ध हैं।<ref>{{cite web|title = Linpack benchmark program in Java
}}</ref> या [[जावा (प्रोग्रामिंग भाषा)|जावा]] प्रोग्रामिंग लैंग्वेज में उपलब्ध हैं।<ref>{{cite web|title = Linpack benchmark program in Java
|accessdate = 2015-02-10
|accessdate = 2015-02-10
|url = http://www.netlib.org/benchmark/linpackjava
|url = http://www.netlib.org/benchmark/linpackjava
}}</ref>
}}</ref>
===एचपीएल===
===एचपीएल===
एचपीएल, एचपीएलइनपैक का एक पोर्टेबल कार्यान्वयन है जिसे मूल रूप से एक दिशानिर्देश के रूप में सी में लिखा गया था, लेकिन अब इसे TOP500 सूची के लिए डेटा प्रदान करने के लिए व्यापक रूप से उपयोग किया जाता है, हालांकि अन्य प्रौद्योगिकियों और पैकेजों का उपयोग किया जा सकता है। एचपीएल क्रम n के समीकरणों की एक रैखिक प्रणाली उत्पन्न करता है और आंशिक पंक्ति धुरी के साथ एलयू अपघटन का उपयोग करके इसे हल करता है। इसे चलाने के लिए एमपीआई और बीएलएएस या वीएसआईपीएल के स्थापित कार्यान्वयन की आवश्यकता होती है।<ref>{{cite web|title = HPL - A Portable Implementation of the High-Performance Linpack Benchmark for Distributed-Memory Computers
एचपीएल, एचपीएलइनपैक का एक पोर्टेबल कार्यान्वयन है जिसे मूल रूप से एक दिशानिर्देश के रूप में सी प्रोग्रामिंग लैंग्वेज में लिखा गया था, लेकिन अब इसका उपयोग टॉप-500 सूची मे डेटा प्रदान करने के लिए व्यापक रूप से किया जाता है। हालांकि अन्य प्रौद्योगिकियों और पैकेजों का उपयोग किया जा सकता है। एचपीएल क्रम n के समीकरणों की एक रैखिक प्रणाली उत्पन्न करता है और पार्टियल पिवट टेबल के साथ एलयू डिकोम्पोसिशन का उपयोग करके इसे हल करता है। इसे कार्यान्वित करने के लिए एमपीआई और बीएलएएस या वीएसआईपीएल के स्थापित कार्यान्वयन की आवश्यकता होती है।<ref>{{cite web|title = HPL - A Portable Implementation of the High-Performance Linpack Benchmark for Distributed-Memory Computers
|accessdate = 2015-02-10
|accessdate = 2015-02-10
|url = http://www.netlib.org/benchmark/hpl
|url = http://www.netlib.org/benchmark/hpl
}}</ref>
}}</ref>


मोटे तौर पर, एल्गोरिथ्म में निम्नलिखित विशेषताएं हैं:<ref>{{cite web |url = http://www.netlib.org/benchmark/hpl/algorithm.html
सामान्यतः एल्गोरिथ्म में निम्नलिखित विशेषताएं होती हैं:<ref>{{cite web |url = http://www.netlib.org/benchmark/hpl/algorithm.html
|title = HPL algorithm
|title = HPL algorithm
}}</ref><ref>{{cite web
}}</ref><ref>{{cite web
Line 193: Line 193:
|accessdate = 2015-02-10
|accessdate = 2015-02-10
}}</ref>
}}</ref>
* 2डी ब्लॉक में चक्रीय डेटा वितरण
* 2डी ब्लॉक में साइक्लिक डेटा डिस्ट्रिब्यूशन
* लुक-फॉरवर्ड ([[एलयू कारकीकरण]]) की विभिन्न गहराइयों के साथ सही दिखने वाले वेरिएंट का उपयोग [[आगे देखो (LU फ़ैक्टराइज़ेशन)|आगे देखो (एलयू फ़ैक्टराइज़ेशन)]]|लुक-फॉरवर्ड
* लुक-फॉरवर्ड की वेरियस डेप्थ के साथ राइट लुक वेरिएंट का उपयोग करके [[आगे देखो (LU फ़ैक्टराइज़ेशन)|एलयू फ़ैक्टराइज़ेशन]]
* पुनरावर्ती पैनल फ़ैक्टराइज़ेशन
* रिकर्सिव पैनल फ़ैक्टराइज़ेशन
* छह अलग-अलग पैनल [[प्रसारण (कंप्यूटिंग)]] वेरिएंट
* छह अलग-अलग पैनल [[प्रसारण (कंप्यूटिंग)|ब्रॉडकास्ट]] वेरिएंट
* बैंडविड्थ कम करने वाला स्वैप-प्रसारण एल्गोरिदम
* बैंडविड्थ रिड्यूस स्वैप-ब्रॉडकास्ट एल्गोरिदम
* गहराई 1 के आगे देखने के साथ पिछड़ा प्रतिस्थापन
* डेप्थ 1 लुक-फॉरवर्ड के साथ बैकवर्ड सब्स्टिटूशन (प्रतिस्थापन)


==आलोचना==
==क्रिटिसिज्म (समीक्षा)==
कहा जाता है कि लिनपैक बेंचमार्क HPलिनपैक की स्केलेबिलिटी<ref>{{cite web
कहा जाता है कि लिनपैक बेंचमार्क एचपीलिनपैक की स्केलेबिलिटी<ref>{{cite web
  |url  = https://www.hpcwire.com/2002/05/24/an-interview-with-supercomputing-legend-jack-dongarra/
  |url  = https://www.hpcwire.com/2002/05/24/an-interview-with-supercomputing-legend-jack-dongarra/
  |title = AN INTERVIEW WITH SUPERCOMPUTING LEGEND JACK DONGARRA
  |title = AN INTERVIEW WITH SUPERCOMPUTING LEGEND JACK DONGARRA
  |date  = 2002-05-24
  |date  = 2002-05-24
}}</ref> के कारण सफल हुआ है, तथ्य यह है कि यह एक ही संख्या उत्पन्न करता है, जिससे परिणाम आसानी से तुलनीय हो जाते हैं और व्यापक ऐतिहासिक डेटा बेस इससे जुड़ा होता है।<ref>{{cite web
}}</ref> के कारण सफल हुआ है। इसका तथ्य यह है कि यह एक ही संख्या उत्पन्न करता है, जिससे परिणाम आसानी से तुलनीय हो जाते हैं और एक्सटेंसिव डेटा बेस इससे संबद्ध होता है।<ref>{{cite web
|quote = LINPACK is a benchmark that people often cite because there’s such a historical data base of information there, because it’s fairly easy to run, it’s fairly easy to understand, and it captures in some sense the best and worst of programming.
|quote = LINPACK is a benchmark that people often cite because there’s such a historical data base of information there, because it’s fairly easy to run, it’s fairly easy to understand, and it captures in some sense the best and worst of programming.
|title = An interview with Jack J. Dongarra
|title = An interview with Jack J. Dongarra
Line 212: Line 212:
|year = 2004
|year = 2004
|url = http://history.siam.org/pdfs2/Dongarra_%20returned_SIAM_copy.pdf
|url = http://history.siam.org/pdfs2/Dongarra_%20returned_SIAM_copy.pdf
}}</ref> हालाँकि, इसके जारी होने के तुरंत बाद, लिनपैक बेंचमार्क की परफॉरमेंस स्तर प्रदान करने के लिए आलोचना की गई थी "आम तौर पर सभी के लिए अप्राप्य, लेकिन बहुत कम प्रोग्रामर जो उस मशीन और अकेले उस मशीन के लिए अपने कोड को अनुकूलित करते हैं",<ref>{{Citation
}}</ref> हालाँकि इसके प्रारम्भ होने के बाद लिनपैक बेंचमार्क की परफॉरमेंस स्तर प्रदान करने के लिए समीक्षा की गई थी।<ref>{{Citation
|last = Hammond
|last = Hammond
|first = Steven
|first = Steven
Line 218: Line 218:
|year = 1995
|year = 1995
|url = https://opensky.ucar.edu/islandora/object/technotes:183
|url = https://opensky.ucar.edu/islandora/object/technotes:183
}}</ref> क्योंकि यह केवल रिज़ॉल्यूशन का परीक्षण करता है सघन रैखिक प्रणालियाँ, जो आमतौर पर वैज्ञानिक कंप्यूटिंग में किए जाने वाले सभी ऑपरेशनों का प्रतिनिधित्व नहीं करती हैं।<ref>{{Citation
}}</ref> सामान्यतः यह सभी के लिए अनओब्टाइनबल (अप्राप्य) है लेकिन अपेक्षाकृत बहुत कम प्रोग्रामर इस मशीन के लिए अपने कोड को कार्यान्वित करते हैं क्योंकि यह केवल डेन्स लीनियर सिस्टम के लिए रिज़ॉल्यूशन का परीक्षण करती है जो सामान्यतः वैज्ञानिक कंप्यूटिंग में किए जाने वाले सभी ऑपरेशनों का प्रतिनिधित्व नहीं करती है।<ref>{{Citation
|last1 = Gahvari
|last1 = Gahvari
|first1 = Hormozd
|first1 = Hormozd
Line 231: Line 231:
|year = 2006
|year = 2006
|url = https://bebop.cs.berkeley.edu/pubs/gahvari2007-spmvbench-spec.pdf
|url = https://bebop.cs.berkeley.edu/pubs/gahvari2007-spmvbench-spec.pdf
}}</ref> लिनपैक बेंचमार्क के पीछे मुख्य प्रेरक शक्ति जैक डोंगर्रा ने कहा कि, हालांकि वे केवल "पीक" सीपीयू गति और सीपीयू की संख्या पर जोर देते हैं, स्थानीय बैंडविड्थ और नेटवर्क पर पर्याप्त जोर नहीं दिया जाता है।<ref>{{Citation
}}</ref> लिनपैक बेंचमार्क के पीछे विकासक जैक डोंगर्रा ने कहा है कि लिनपैक बेंचमार्क द्वारा केवल "पीक" सीपीयू-स्पीड और सीपीयू की संख्या पर महत्व दिया जाता है लेकिन लोकल बैंडविड्थ नेटवर्क पर पर्याप्त रूप से महत्व नहीं दिया जाता है।<ref>{{Citation
|last = Dongarra
|last = Dongarra
|first = Jack J.
|first = Jack J.
Line 240: Line 240:
}}</ref>
}}</ref>


[[सुपरकंप्यूटिंग अनुप्रयोगों के लिए राष्ट्रीय केंद्र]] के निदेशक थॉम डनिंग जूनियर ने लिनपैक बेंचमार्क के बारे में यह कहा: "लिनपैक बेंचमार्क उन दिलचस्प घटनाओं में से एक है - लगभग कोई भी जो इसके बारे में जानता है वह इसकी उपयोगिता का उपहास करेगा। वे इसे समझते हैं सीमाएँ लेकिन इसमें माइंडशेयर है क्योंकि यह एक ऐसा नंबर है जिसे हम सभी ने वर्षों से खरीदा है।"<ref>{{Cite news |url = https://www.technologyreview.com/2010/11/08/199100/why-chinas-new-supercomputer-is-only-technically-the-worlds-fastest/
[[सुपरकंप्यूटिंग अनुप्रयोगों के लिए राष्ट्रीय केंद्र|सुपर कंप्यूटिंग एप्लीकेशन के लिए राष्ट्रीय केंद्र]] के अध्यक्ष थॉम डनिंग जूनियर ने लिनपैक बेंचमार्क के विषय में यह कहा है कि "लिनपैक बेंचमार्क उन फीनोमिना में से एक है जिसको लगभग कोई भी जान सकता है और वह इसकी उपयोगिता का उपहास (ड्रीड) कर सकता है। लेकिन इसमें माइंडशेयर होते है क्योंकि यह एक ऐसी संख्या है जिसे हम सभी के साथ कार्यान्वित कर सकते हैं।"<ref>{{Cite news |url = https://www.technologyreview.com/2010/11/08/199100/why-chinas-new-supercomputer-is-only-technically-the-worlds-fastest/
| title = Why China's New Supercomputer Is Only Technically the World's Fastest
| title = Why China's New Supercomputer Is Only Technically the World's Fastest
| author = Christopher Mims
| author = Christopher Mims
| date = 2010-11-08
| date = 2010-11-08
| accessdate = 2011-09-22
| accessdate = 2011-09-22
}}</ref>
}}</ref> डोंगरा के अनुसार टॉप-500 के रिपोर्टर सक्रिय रूप से बेंचमार्क रिपोर्टिंग के परफॉरमेंस का विस्तार करना चाह रहे थे क्योंकि किसी दिए गए सिस्टम के लिए अधिक परफॉरमेंस विशेषता और उसमे हस्ताक्षर करना महत्वपूर्ण होता है।<ref>{{cite web
 
डोंगरा के अनुसार, टॉप500 के आयोजक सक्रिय रूप से बेंचमार्क रिपोर्टिंग के दायरे का विस्तार करना चाह रहे हैं क्योंकि किसी दिए गए सिस्टम के लिए अधिक परफॉरमेंस विशेषता और हस्ताक्षर सम्मिलित करना महत्वपूर्ण है।<ref>{{cite web
  |title      = AN INTERVIEW WITH SUPERCOMPUTING LEGEND JACK DONGARRA
  |title      = AN INTERVIEW WITH SUPERCOMPUTING LEGEND JACK DONGARRA
  |last      = Meuer
  |last      = Meuer
Line 254: Line 252:
  |accessdate = 2022-12-01
  |accessdate = 2022-12-01
  |url        = https://www.hpcwire.com/2002/05/24/an-interview-with-supercomputing-legend-jack-dongarra/
  |url        = https://www.hpcwire.com/2002/05/24/an-interview-with-supercomputing-legend-jack-dongarra/
}}</ref>
}}</ref> टॉप-500 के लिए बेंचमार्क का विस्तार करने के लिए जिन संभावनाओं पर विचार किया जा रहा है उनमें से एक [[एचपीसी चैलेंज बेंचमार्क]] सूट है।<ref>{{Citation
 
TOP500 के लिए बेंचमार्क का विस्तार करने के लिए जिन संभावनाओं पर विचार किया जा रहा है उनमें से एक [[एचपीसी चैलेंज बेंचमार्क]] सूट है।<ref>{{Citation
|title = Introduction to the HPC Challenge Benchmark Suite
|title = Introduction to the HPC Challenge Benchmark Suite
|year = 2005
|year = 2005
Line 278: Line 274:
|first9 = Daisuke
|first9 = Daisuke
|url = http://icl.cs.utk.edu/projectsfiles/hpcc/pubs/hpcc-challenge-benchmark05.pdf
|url = http://icl.cs.utk.edu/projectsfiles/hpcc/pubs/hpcc-challenge-benchmark05.pdf
}}</ref> [[पेटास्केल कंप्यूटिंग]] के आगमन के साथ, प्रति सेकंड ट्रैवर्स किए गए किनारे लिनपैक द्वारा मापे गए फ्लॉप्स के पूरक मीट्रिक के रूप में उभरने लगे हैं। ऐसा ही एक अन्य मीट्रिक [[एचपीसीजी बेंचमार्क]] है, जो डोंगर्रा द्वारा प्रस्तावित है।<ref>{{cite news|url=https://www.hpcwire.com/2014/06/26/development-pushes-ahead-new-hpc-benchmark/|title=नया एचपीसी बेंचमार्क आशाजनक परिणाम देता है|last=Hemsoth|first=Nicole|date=June 26, 2014|publisher=HPCWire|accessdate=2022-12-01}}</ref>
}}</ref> [[पेटास्केल कंप्यूटिंग]] के आगमन के साथ प्रति सेकंड ट्रैवर्स किए गए और लिनपैक द्वारा मापे गए फ्लॉप्स पूरक मीट्रिक के रूप में विकसित हैं। ऐसा ही एक अन्य मीट्रिक [[एचपीसीजी बेंचमार्क]] है, जो डोंगर्रा द्वारा प्रस्तावित किया गया था।<ref>{{cite news|url=https://www.hpcwire.com/2014/06/26/development-pushes-ahead-new-hpc-benchmark/|title=नया एचपीसी बेंचमार्क आशाजनक परिणाम देता है|last=Hemsoth|first=Nicole|date=June 26, 2014|publisher=HPCWire|accessdate=2022-12-01}}</ref>
===चलने का समय मुद्दा===
===कार्यान्वयन टाइम समस्या===
जैक डोंगर्रा के अनुसार, एचपीलिनपैक के साथ अच्छे परफॉरमेंस परिणाम प्राप्त करने के लिए आवश्यक रनिंग टाइम में वृद्धि होने की उम्मीद है। 2010 में आयोजित एक सम्मेलन में, उन्होंने कहा कि उन्हें कुछ वर्षों में 2.5 दिनों के चलने की उम्मीद है।<ref>{{Cite conference
जैक डोंगर्रा के अनुसार एचपीलिनपैक के साथ अच्छे परफॉरमेंस परिणाम प्राप्त करने के लिए आवश्यक कार्यान्वयन टाइम में वृद्धि होने की संभावना है। 2010 में आयोजित एक सम्मेलन में उन्होंने कहा कि उन्हें कुछ वर्षों में 2.5 दिनों के कार्यान्वयन टाइम संभावना है।<ref>{{Cite conference
|last = Dongarra
|last = Dongarra
|first = Jack J.
|first = Jack J.
Line 296: Line 292:


==बाहरी संबंध==
==बाहरी संबंध==
* [https://top500.org/project/linpack/ TOP500 लिनपैक]
* [https://top500.org/project/linpack/ टॉप-500 लिनपैक]
* [http://www.netlib.org/benchmark/linpackjava/ a web-based लिनपैक benchmark]
* [http://www.netlib.org/benchmark/linpackjava/ a web-based लिनपैक benchmark]
* [https://software.intel.com/en-us/articles/intel-math-kernel-library-linpack-download Intel® Optimized लिनपैक Benchmark]
* [https://software.intel.com/en-us/articles/intel-math-kernel-library-linpack-download Intel® Optimized लिनपैक Benchmark]

Revision as of 12:55, 8 August 2023

लिनपैक बेंचमार्क
Original author(s)जैक डोंगर्रा, जिम बंच, क्लेव मोलर और गिल्बर्ट स्टीवर्ट
Initial release1979 (1979)
Websitenetlib.org/benchmark/hpl/

लिनपैक बेंचमार्क एक सिस्टम की फ़्लोटिंग-पॉइंट कंप्यूटिंग माप है, जिसे जैक डोंगरा द्वारा प्रस्तुत प्रस्तुत किया गया था। वे मापते हैं कि कंप्यूटर कितनी तीव्रता से रैखिक समीकरण Ax = b को n सिस्टम द्वारा हल सकता है जो कि इंजीनियरिंग में एक सामान्य टास्क है।

इन बेंचमार्क (कंप्यूटिंग) के नवीनतम संस्करण का उपयोग विश्व के सबसे प्रभावशाली सुपर कंप्यूटरों की रैंकिंग करने के लिए टॉप-500 सूची (लिस्ट) बनाने के लिए किया जाता है।[1]

इसका उद्देश्य यह अनुमान लगाना है कि वास्तविक समस्याओं को हल करते समय कंप्यूटर कितनी तीव्रता से कार्य करता है। यह एक सरलीकरण है क्योंकि कोई भी एकल कम्प्यूटेशनल टास्क कंप्यूटर सिस्टम के समग्र बेंचमार्क परफॉरमेंस (प्रदर्शन) को रिफ्लेक्ट नहीं कर सकता है। फिर भी लिनपैक बेंचमार्क परफॉरमेंस निर्माता द्वारा प्रदान किए गए पीक-परफॉरमेंस पर एक अच्छा सुधार प्रदान कर सकता है। पीक-परफॉरमेंस अधिकतम सैद्धांतिक परफॉरमेंस है जिसे एक कंप्यूटर द्वारा प्राप्त किया जा सकता है। इसकी गणना मशीन की आवृत्ति के रूप में की जाती है। यह प्रति सेकंड राउंड या प्रति राउंड संचालन की संख्या की कई गुना होती है। वास्तविक परफॉरमेंस सदैव पीक-परफॉरमेंस से कम होता है।[2] कंप्यूटर का परफॉरमेंस एक जटिल समस्या है जो कई परस्पर संबद्ध वेरिएबल पर निर्भर करती है। लिनपैक बेंचमार्क द्वारा मापे गए परफॉरमेंस में 64-बिट फ़्लोटिंग-पॉइंट ऑपरेशन की संख्या सम्मिलित होती है। सामान्यतः जोड़ (+) और गुणा (*) एक कंप्यूटर प्रति सेकंड परफॉरमेंस कर सकता है, जिसे फ्लॉप भी कहा जाता है। हालाँकि वास्तविक एप्लिकेशन चलाने पर कंप्यूटर का परफॉरमेंस लिनपैक बेंचमार्क पर प्राप्त अधिकतम परफॉरमेंस से अपेक्षाकृत कम होने की संभावना है।[3]

बेंचमार्क का नाम लिनपैक पैकेज से आया है, जो 1980 के दशक में व्यापक रूप से उपयोग किए जाने वाले बीजगणित फोरट्रान प्रक्रिया का एक संग्रह है। सामान्यतः यह प्रारम्भ में लिनपैक बेंचमार्क से संबद्ध था तब से लिनपैक पैकेज को एक लाइब्रेरी द्वारा बेंचमार्क मे प्रतिस्थापित कर दिया गया था।

इतिहास

लिनपैक बेंचमार्क रिपोर्ट पहली बार 1979 में लिनपैक के मैनुअल उपयोगकर्ता के द्वारा प्रदर्शित हुई थी।।[4]

लिनपैक बेंचमार्क रिपोर्ट को उपयोगकर्ताओं के लिए 100 आकार की मैट्रिक्स समस्या को हल करने वाले 23 विभिन्न कंप्यूटरों द्वारा प्राप्त परफॉरमेंस परिणामों को एक्सट्रपलेशन और लिनपैक पैकेज का उपयोग करके किसी समस्या को हल करने के लिए और उनके सिस्टम द्वारा आवश्यक समय का अनुमान लगाने में सहायता करने के लिए डिज़ाइन किया गया था।

यह मैट्रिक्स आकार उस समय मेमोरी और सीपीयू सीमाओं के कारण चुना गया था:

  • -1 से 1 तक 10,000 फ़्लोटिंग-पॉइंट एक सामान्य मैट्रिक्स को भरने के लिए यादृच्छिक रूप से उत्पन्न होते हैं।
  • पार्टियल पिवट टेबल के साथ एलयू डिकोम्पोसिशन का उपयोग अपेक्षाकृत कम समय के लिए किया जाता है।

इन वर्षों में विभिन्न समस्या आकारों के साथ अतिरिक्त संस्करण जैसे 300 और 1000 के मैट्रिक्स और कॉन्सट्रेंट को प्रस्तुत किया गया था। जिससे हार्डवेयर आर्किटेक्चर ने मैट्रिक्स-वेक्टर और मैट्रिक्स संचालन को प्रयुक्त करना प्रारम्भ कर दिया था, जिससे नए ऑप्टिमाइजेशन के अवसर प्राप्त हो सके।[5] 1980 के दशक के अंत में लिनपैक पैरेलल बेंचमार्क में समानांतर (पैरेलल) प्रसंस्करण भी प्रारम्भ किया गया था।[2]

1991 में लिनपैक की अपेक्षाकृत आकार समस्याओं को हल करने के लिए इसे पुनः संशोधित किया गया था। जिससे हाई-परफॉरमेंस कंप्यूटर (एचपीसी) अपने एसिम्प्टोटिक परफॉरमेंस के निकट अभिगम्य हो सकते हैं। दो साल बाद पुनः इस बेंचमार्क का उपयोग पहली टॉप-500 सूची के परफॉरमेंस को मापने के लिए किया गया था।[6]

बेंचमार्क

लिनपैक 100

लिनपैक 100, 1979 में लिनपैक मैनुअल उपयोगकर्ता के साथ प्रकाशित मूल बेंचमार्क के समान है, जिसे गॉसियन एलिमिनेशन द्वारा पार्टियल पिवट टेबल के साथ प्राप्त किया जाता है। जहां 2/3n³ + 2n² फ्लोटिंग-पॉइंट संचालन के साथ n,100 है और मैट्रिक्स A का क्रम एक समस्या को परिभाषित करता है। इसका छोटा आकार और सॉफ्टवेयर फ्लेक्सिबिलिटी की कमी अधिकांश आधुनिक कंप्यूटरों को उनकी परफॉरमेंस सीमा तक जाने की स्वीकृति नहीं देती है। हालाँकि कंपाइलर ऑप्टिमाइज़ेशन का उपयोग करके संख्यात्मक रूप से लिनपैक उपयोगकर्ता लिखित कोड से परफॉरमेंस का पूर्वानुमान करना अभी भी उपयोगी हो सकता है।[2]

लिनपैक 1000

लिनपैक 1000 मशीन की सीमा के निकट परफॉरमेंस प्रदान कर सकता है क्योंकि बड़ी समस्या के आकार के परफॉरमेंस के अतिरिक्त एल्गोरिथ्म में लिनपैक 1000 के मैट्रिक्स में परिवर्तन संभव है। एकमात्र समस्या यह है कि सापेक्ष एक्यूरेसी को अपेक्षाकृत कम नहीं किया जा सकता है और संचालन की संख्या सदैव n = 1000 के साथ 2/3n³ + 2n² मानी जाती है।[2]

एचपीलिनपैक

पिछले बेंचमार्क समानांतर कंप्यूटरों के परीक्षण के लिए उपयुक्त नहीं थे जिसके लिए लिनपैक का अत्यधिक समानांतर कंप्यूटिंग बेंचमार्क या एचपीलिनपैक बेंचमार्क प्रस्तुत किया गया था।[7] एचपीएलइनपैक में समस्या का आकार n जितना बड़ा माना जा सकता है क्योकि मशीन के परफॉरमेंस परिणामों को अनुकूलित करने के लिए यह आवश्यक होता है। एक बार उपयोग किए गए एल्गोरिदम के साथ 2/3n³ + 2n² को एक ऑपरेशन गणना के रूप में माना जाता है। जिसमे स्ट्रैसेन एल्गोरिथ्म के उपयोग की स्वीकृति नहीं होती है क्योंकि यह वास्तविक निष्पादन दर को डिस्टॉर्ट करता है।[8] सामान्यतः एक्यूरेसी ऐसी होनी चाहिए कि जिससे निम्नलिखित एक्सप्रेशन संतुष्ट हो:

,

जहाँ मशीन प्रिसिशन, n समस्या का आकार,[9] मैट्रिक्स बेंचमार्क और बिग-ओ नोटेशन है।

प्रत्येक कंप्यूटर सिस्टम के लिए निम्नलिखित विशेषताएँ आवश्यक हो सकती हैं:[2]

  • Rmax: किसी मशीन पर कार्यान्वित सबसे बड़ी समस्या के लिए जीफ्लॉप में परफॉरमेंस।
  • Nmax: किसी मशीन पर कार्यान्वित सबसे बड़ी समस्या का आकार।
  • N1/2: वह आकार जहां Rmax निष्पादन दर को प्राप्त किया जा सकता है।
  • Rpeak: मशीन के लिए सैद्धांतिक पीक-परफॉरमेंस जीफ्लॉप।

इन परिणामों का उपयोग विश्व के सबसे प्रभावशाली कंप्यूटरों के साथ वर्ष में दो बार टॉप-500 सूची को संकलित करने के लिए किया जाता है।[1] सामान्यतः टॉप-500 सूची मे इसका उपयोग डबल-प्रिसिशन फ़्लोटिंग-पॉइंट फॉर्मेट (एफपी-64) के रूप मे किया जाता है।

लिनपैक बेंचमार्क कार्यान्वयन

पिछला सेक्शन (अनुभाग) बेंचमार्क के लिए मूल नियमों का वर्णन करता है। जिसमे प्रोग्राम का वास्तविक कार्यान्वयन भी भिन्न हो सकता है। इसके कुछ उदाहरण फोरट्रान, सी[10] या जावा प्रोग्रामिंग लैंग्वेज में उपलब्ध हैं।[11]

एचपीएल

एचपीएल, एचपीएलइनपैक का एक पोर्टेबल कार्यान्वयन है जिसे मूल रूप से एक दिशानिर्देश के रूप में सी प्रोग्रामिंग लैंग्वेज में लिखा गया था, लेकिन अब इसका उपयोग टॉप-500 सूची मे डेटा प्रदान करने के लिए व्यापक रूप से किया जाता है। हालांकि अन्य प्रौद्योगिकियों और पैकेजों का उपयोग किया जा सकता है। एचपीएल क्रम n के समीकरणों की एक रैखिक प्रणाली उत्पन्न करता है और पार्टियल पिवट टेबल के साथ एलयू डिकोम्पोसिशन का उपयोग करके इसे हल करता है। इसे कार्यान्वित करने के लिए एमपीआई और बीएलएएस या वीएसआईपीएल के स्थापित कार्यान्वयन की आवश्यकता होती है।[12]

सामान्यतः एल्गोरिथ्म में निम्नलिखित विशेषताएं होती हैं:[13][14]

  • 2डी ब्लॉक में साइक्लिक डेटा डिस्ट्रिब्यूशन
  • लुक-फॉरवर्ड की वेरियस डेप्थ के साथ राइट लुक वेरिएंट का उपयोग करके एलयू फ़ैक्टराइज़ेशन
  • रिकर्सिव पैनल फ़ैक्टराइज़ेशन
  • छह अलग-अलग पैनल ब्रॉडकास्ट वेरिएंट
  • बैंडविड्थ रिड्यूस स्वैप-ब्रॉडकास्ट एल्गोरिदम
  • डेप्थ 1 लुक-फॉरवर्ड के साथ बैकवर्ड सब्स्टिटूशन (प्रतिस्थापन)

क्रिटिसिज्म (समीक्षा)

कहा जाता है कि लिनपैक बेंचमार्क एचपीलिनपैक की स्केलेबिलिटी[15] के कारण सफल हुआ है। इसका तथ्य यह है कि यह एक ही संख्या उत्पन्न करता है, जिससे परिणाम आसानी से तुलनीय हो जाते हैं और एक्सटेंसिव डेटा बेस इससे संबद्ध होता है।[16] हालाँकि इसके प्रारम्भ होने के बाद लिनपैक बेंचमार्क की परफॉरमेंस स्तर प्रदान करने के लिए समीक्षा की गई थी।[17] सामान्यतः यह सभी के लिए अनओब्टाइनबल (अप्राप्य) है लेकिन अपेक्षाकृत बहुत कम प्रोग्रामर इस मशीन के लिए अपने कोड को कार्यान्वित करते हैं क्योंकि यह केवल डेन्स लीनियर सिस्टम के लिए रिज़ॉल्यूशन का परीक्षण करती है जो सामान्यतः वैज्ञानिक कंप्यूटिंग में किए जाने वाले सभी ऑपरेशनों का प्रतिनिधित्व नहीं करती है।[18] लिनपैक बेंचमार्क के पीछे विकासक जैक डोंगर्रा ने कहा है कि लिनपैक बेंचमार्क द्वारा केवल "पीक" सीपीयू-स्पीड और सीपीयू की संख्या पर महत्व दिया जाता है लेकिन लोकल बैंडविड्थ नेटवर्क पर पर्याप्त रूप से महत्व नहीं दिया जाता है।[19]

सुपर कंप्यूटिंग एप्लीकेशन के लिए राष्ट्रीय केंद्र के अध्यक्ष थॉम डनिंग जूनियर ने लिनपैक बेंचमार्क के विषय में यह कहा है कि "लिनपैक बेंचमार्क उन फीनोमिना में से एक है जिसको लगभग कोई भी जान सकता है और वह इसकी उपयोगिता का उपहास (ड्रीड) कर सकता है। लेकिन इसमें माइंडशेयर होते है क्योंकि यह एक ऐसी संख्या है जिसे हम सभी के साथ कार्यान्वित कर सकते हैं।"[20] डोंगरा के अनुसार टॉप-500 के रिपोर्टर सक्रिय रूप से बेंचमार्क रिपोर्टिंग के परफॉरमेंस का विस्तार करना चाह रहे थे क्योंकि किसी दिए गए सिस्टम के लिए अधिक परफॉरमेंस विशेषता और उसमे हस्ताक्षर करना महत्वपूर्ण होता है।[21] टॉप-500 के लिए बेंचमार्क का विस्तार करने के लिए जिन संभावनाओं पर विचार किया जा रहा है उनमें से एक एचपीसी चैलेंज बेंचमार्क सूट है।[22] पेटास्केल कंप्यूटिंग के आगमन के साथ प्रति सेकंड ट्रैवर्स किए गए और लिनपैक द्वारा मापे गए फ्लॉप्स पूरक मीट्रिक के रूप में विकसित हैं। ऐसा ही एक अन्य मीट्रिक एचपीसीजी बेंचमार्क है, जो डोंगर्रा द्वारा प्रस्तावित किया गया था।[23]

कार्यान्वयन टाइम समस्या

जैक डोंगर्रा के अनुसार एचपीलिनपैक के साथ अच्छे परफॉरमेंस परिणाम प्राप्त करने के लिए आवश्यक कार्यान्वयन टाइम में वृद्धि होने की संभावना है। 2010 में आयोजित एक सम्मेलन में उन्होंने कहा कि उन्हें कुछ वर्षों में 2.5 दिनों के कार्यान्वयन टाइम संभावना है।[24]

यह भी देखें

संदर्भ

  1. 1.0 1.1 "The Linpack Benchmark, TOP500 Supercomputing Sites". Retrieved 2015-02-10.
  2. 2.0 2.1 2.2 2.3 2.4 Dongarra, Jack J.; Luszczek, Piotr; Petitet, Antoine (2003), "The LINPACK Benchmark: past, present and future" (PDF), Concurrency and Computation: Practice and Experience, John Wiley & Sons, Ltd., 15 (9): 803–820, doi:10.1002/cpe.728, S2CID 1900724
  3. Jack Dongarra interview by Sander Olson, archived from the original on 2016-03-04, retrieved 2012-01-13
  4. Dongarra, J.J.; Moler, C.B.; Bunch, J.R.; Stewart, G.W. (1979), LINPACK: users' guide, SIAM, ISBN 9780898711721
  5. Dongarra, Jack (1988), "The LINPACK benchmark: An explanation" (PDF), Supercomputing, Lecture Notes in Computer Science, Springer Berlin/Heidelberg, 297: 456–474, doi:10.1007/3-540-18991-2_27, ISBN 978-3-540-18991-6
  6. High Performance Linpack Benchmark (PDF), retrieved 2015-02-10
  7. Bailey, D.H.; Barszcz, E.; Barton, J.T.; Browning, D.S.; Carter, R.L.; Dagum, L.; Fatoohi, R.A.; Frederickson, P.O.; Lasinski, T.A.; Schreiber, R.S.; Simon, H.D.; Venkatakrishnan, V.; Weeratunga, S.K. (1991), "The NAS parallel benchmarks summary and preliminary results", Supercomputing, Supercomputing '91. Proceedings of the 1991 ACM/IEEE Conference: 158–165, doi:10.1145/125826.125925, ISBN 0897914597, S2CID 18046345{{citation}}: CS1 maint: location (link)
  8. "LINPACK FAQ - Can I use Strassen's Method when doing the matrix multiples in the HPL benchmark or for the Top500 run?". Retrieved 2015-02-10.
  9. "LINPACK FAQ - To what accuracy must be the solution conform?". Retrieved 2015-02-10.
  10. "Linpack benchmark program in C". Retrieved 2015-02-10.
  11. "Linpack benchmark program in Java". Retrieved 2015-02-10.
  12. "HPL - A Portable Implementation of the High-Performance Linpack Benchmark for Distributed-Memory Computers". Retrieved 2015-02-10.
  13. "HPL algorithm".
  14. "HPL overview". Retrieved 2015-02-10.
  15. "AN INTERVIEW WITH SUPERCOMPUTING LEGEND JACK DONGARRA". 2002-05-24.
  16. Haigh, Thomas (2004). "An interview with Jack J. Dongarra" (PDF). LINPACK is a benchmark that people often cite because there's such a historical data base of information there, because it's fairly easy to run, it's fairly easy to understand, and it captures in some sense the best and worst of programming.
  17. Hammond, Steven (1995), Beyond Machoflops: Getting MPPs Into the Production Environment
  18. Gahvari, Hormozd; Hoemmen, Mark; Demmel, James; Yelick, Katherine (2006), "Benchmarking Sparse Matrix-Vector Multiply in Five Minutes", SPEC Benchmark Workshop (PDF)
  19. Dongarra, Jack J. (2007), "The HPC Challenge Benchmark: A Candidate for Replacing Linpack in the Top500?", SPEC Benchmark Workshop (PDF)
  20. Christopher Mims (2010-11-08). "Why China's New Supercomputer Is Only Technically the World's Fastest". Retrieved 2011-09-22.
  21. Meuer, Martin (2002-05-24). "AN INTERVIEW WITH SUPERCOMPUTING LEGEND JACK DONGARRA". Retrieved 2022-12-01.
  22. Luszczek, Piotr; Dongarra, Jack J.; Koester, David; Rabenseifner, Rolf; Lucas, Bob; Kepner, Jeremy; Mccalpin, John; Bailey, David; Takahashi, Daisuke (2005), Introduction to the HPC Challenge Benchmark Suite (PDF)
  23. Hemsoth, Nicole (June 26, 2014). "नया एचपीसी बेंचमार्क आशाजनक परिणाम देता है". HPCWire. Retrieved 2022-12-01.
  24. Dongarra, Jack J. (2010). LINPACK Benchmark with Time Limits on Multicore & GPU Based Accelerators (PDF). International Supercomputing Conference.


बाहरी संबंध