लिनपैक बेंचमार्क
Original author(s) | Jack Dongarra, Jim Bunch, Cleve Moler, and Gilbert Stewart |
---|---|
Initial release | 1979 |
Website | netlib |
लिनपैक बेंचमार्क एक सिस्टम की फ़्लोटिंग-पॉइंट अंकगणित | फ़्लोटिंग-पॉइंट कंप्यूटिंग शक्ति का एक माप है। जैक डोंगरा द्वारा प्रस्तुत, वे मापते हैं कि एक कंप्यूटर कितनी तेजी से रैखिक समीकरणों की एन प्रणाली एक्स = बी को हल करता है, जो अभियांत्रिकी में एक सामान्य कार्य है।
इन बेंचमार्क (कंप्यूटिंग) के नवीनतम संस्करण का उपयोग दुनिया के सबसे शक्तिशाली सुपर कंप्यूटरों की रैंकिंग करते हुए TOP500 सूची बनाने के लिए किया जाता है।[1]
इसका उद्देश्य यह अनुमान लगाना है कि वास्तविक समस्याओं को हल करते समय कंप्यूटर कितनी तेजी से काम करेगा। यह एक सरलीकरण है, क्योंकि कोई भी एकल कम्प्यूटेशनल कार्य कंप्यूटर सिस्टम के समग्र प्रदर्शन को प्रतिबिंबित नहीं कर सकता है। फिर भी, LINPACK बेंचमार्क प्रदर्शन निर्माता द्वारा प्रदान किए गए चरम प्रदर्शन पर एक अच्छा सुधार प्रदान कर सकता है। शिखर प्रदर्शन अधिकतम सैद्धांतिक प्रदर्शन है जिसे एक कंप्यूटर प्राप्त कर सकता है, इसकी गणना मशीन की आवृत्ति के रूप में की जाती है, प्रति सेकंड चक्र में, प्रति चक्र संचालन की संख्या से गुना। वास्तविक प्रदर्शन हमेशा सर्वोच्च प्रदर्शन से कम होगा।[2]कंप्यूटर का प्रदर्शन एक जटिल मुद्दा है जो कई परस्पर जुड़े चरों पर निर्भर करता है। LINPACK बेंचमार्क द्वारा मापे गए प्रदर्शन में 64-बिट फ़्लोटिंग-पॉइंट ऑपरेशन की संख्या शामिल होती है, आम तौर पर जोड़ और गुणा, एक कंप्यूटर प्रति सेकंड प्रदर्शन कर सकता है, जिसे FLOPS भी कहा जाता है। हालाँकि, वास्तविक एप्लिकेशन चलाने पर कंप्यूटर का प्रदर्शन उचित LINPACK बेंचमार्क चलाने पर प्राप्त अधिकतम प्रदर्शन से काफी पीछे होने की संभावना है।[3] इन बेंचमार्क का नाम LINPACK पैकेज से आया है, जो 1980 के दशक में व्यापक रूप से उपयोग किए जाने वाले बीजगणित फोरट्रान सबरूटीन्स का एक संग्रह है, और शुरू में LINPACK बेंचमार्क से कसकर जुड़ा हुआ था। तब से LINPACK पैकेज को अन्य पुस्तकालयों द्वारा प्रतिस्थापित कर दिया गया है।
इतिहास
LINPACK बेंचमार्क रिपोर्ट पहली बार 1979 में LINPACK उपयोगकर्ता मैनुअल के परिशिष्ट के रूप में सामने आई।[4] LINPACK को उपयोगकर्ताओं को 100 आकार की मैट्रिक्स समस्या को हल करने वाले 23 विभिन्न कंप्यूटरों द्वारा प्राप्त प्रदर्शन परिणामों को एक्सट्रपलेशन करके, LINPACK पैकेज का उपयोग करके किसी समस्या को हल करने के लिए उनके सिस्टम द्वारा आवश्यक समय का अनुमान लगाने में मदद करने के लिए डिज़ाइन किया गया था।
यह मैट्रिक्स आकार उस समय मेमोरी और सीपीयू सीमाओं के कारण चुना गया था:
- -1 से 1 तक 10,000 फ़्लोटिंग-पॉइंट प्रविष्टियाँ एक सामान्य, सघन मैट्रिक्स को भरने के लिए यादृच्छिक रूप से उत्पन्न होती हैं,
- फिर, आंशिक धुरी के साथ एलयू अपघटन का उपयोग समय के लिए किया जाता है।
इन वर्षों में, विभिन्न समस्या आकारों के साथ अतिरिक्त संस्करण, जैसे ऑर्डर 300 और 1000 के मैट्रिक्स, और बाधाएं जारी की गईं, जिससे हार्डवेयर आर्किटेक्चर ने मैट्रिक्स-वेक्टर और मैट्रिक्स-मैट्रिक्स संचालन को लागू करना शुरू कर दिया, जिससे नए अनुकूलन के अवसर मिले।[5] 1980 के दशक के अंत में LINPACK पैरेलल बेंचमार्क में समानांतर प्रसंस्करण भी शुरू किया गया था।[2] 1991 में, लिनपैक को संशोधित किया गया था[6] मनमाने आकार की समस्याओं को हल करना, सुपर कंप्यूटर (एचपीसी) को उनके एसिम्प्टोटिक प्रदर्शन के करीब पहुंचने में सक्षम बनाना।
दो साल बाद इस बेंचमार्क का उपयोग पहली TOP500 सूची के प्रदर्शन को मापने के लिए किया गया था।
मानदंड
लिनपैक 100
LINPACK 100 LINPACK उपयोगकर्ता मैनुअल के साथ 1979 में प्रकाशित मूल बेंचमार्क के समान है। समाधान गॉसियन उन्मूलन द्वारा धुरी तत्व के साथ प्राप्त किया जाता है, 2/3n³ + 2n² फ्लोटिंग-पॉइंट ऑपरेशन के साथ जहां n 100 है, घने मैट्रिक्स ए का क्रम जो समस्या को परिभाषित करता है। इसका छोटा आकार और सॉफ्टवेयर लचीलेपन की कमी अधिकांश आधुनिक कंप्यूटरों को उनकी प्रदर्शन सीमा तक पहुंचने की अनुमति नहीं देती है। हालाँकि, कंपाइलर ऑप्टिमाइज़ेशन का उपयोग करके संख्यात्मक रूप से गहन उपयोगकर्ता लिखित कोड में प्रदर्शन की भविष्यवाणी करना अभी भी उपयोगी हो सकता है।[2]
लिनपैक 1000
LINPACK 1000 मशीन की सीमा के करीब प्रदर्शन प्रदान कर सकता है क्योंकि बड़े समस्या आकार, ऑर्डर 1000 के मैट्रिक्स की पेशकश के अलावा, एल्गोरिदम में बदलाव संभव हैं। एकमात्र बाधा यह है कि सापेक्ष सटीकता को कम नहीं किया जा सकता है और संचालन की संख्या हमेशा n = 1000 के साथ 2/3n³ + 2n² मानी जाएगी।[2]
एचपीलिनपैक
पिछले बेंचमार्क समानांतर कंप्यूटर के परीक्षण के लिए उपयुक्त नहीं हैं,[7] और तथाकथित लिनपैक का अत्यधिक समानांतर कंप्यूटिंग बेंचमार्क, या एचपीलिनपैक बेंचमार्क पेश किया गया था। एचपीएलइनपैक में समस्या का आकार n उतना बड़ा बनाया जा सकता है जितना मशीन के प्रदर्शन परिणामों को अनुकूलित करने के लिए आवश्यक हो। एक बार फिर, उपयोग किए गए एल्गोरिदम की स्वतंत्रता के साथ, 2/3n³ + 2n² को ऑपरेशन गिनती के रूप में लिया जाएगा। सड़क एल्गोरिदम के उपयोग की अनुमति नहीं है क्योंकि यह वास्तविक निष्पादन दर को विकृत करता है।[8] सटीकता ऐसी होनी चाहिए कि निम्नलिखित अभिव्यक्ति संतुष्ट हो:
, कहाँ मशीन की परिशुद्धता है, और n समस्या का आकार है,[9] मैट्रिक्स मानदंड है और बिग-ओ संकेतन से मेल खाता है।
प्रत्येक कंप्यूटर सिस्टम के लिए, निम्नलिखित मात्राएँ रिपोर्ट की जाती हैं:[2]
- आरmax: किसी मशीन पर चलने वाली सबसे बड़ी समस्या के लिए GFLOPS में प्रदर्शन।
- एनmax: किसी मशीन पर चलने वाली सबसे बड़ी समस्या का आकार।
- एन1/2: वह आकार जहां आधा आरमैक्स निष्पादन दर हासिल की जाती है।
- आरpeak: मशीन के लिए सैद्धांतिक शिखर प्रदर्शन GFLOPS।
इन परिणामों का उपयोग दुनिया के सबसे शक्तिशाली कंप्यूटरों के साथ, वर्ष में दो बार TOP500 सूची संकलित करने के लिए किया जाता है।[1] TOP500 इन्हें डबल-परिशुद्धता फ़्लोटिंग-पॉइंट प्रारूप (FP64) में मापता है।
LINPACK बेंचमार्क कार्यान्वयन
पिछला अनुभाग बेंचमार्क के लिए बुनियादी नियमों का वर्णन करता है। कार्यक्रम का वास्तविक कार्यान्वयन भिन्न हो सकता है, कुछ उदाहरण फोरट्रान में उपलब्ध हैं,[10] सी (प्रोग्रामिंग भाषा) [11] या जावा (प्रोग्रामिंग भाषा)।[12]
एचपीएल
एचपीएल, एचपीएलइनपैक का एक पोर्टेबल कार्यान्वयन है जिसे मूल रूप से एक दिशानिर्देश के रूप में सी में लिखा गया था, लेकिन अब इसे TOP500 सूची के लिए डेटा प्रदान करने के लिए व्यापक रूप से उपयोग किया जाता है, हालांकि अन्य प्रौद्योगिकियों और पैकेजों का उपयोग किया जा सकता है। एचपीएल क्रम n के समीकरणों की एक रैखिक प्रणाली उत्पन्न करता है और आंशिक पंक्ति धुरी के साथ LU अपघटन का उपयोग करके इसे हल करता है। इसे चलाने के लिए संदेश पासिंग इंटरफ़ेस और बीएलएएस या सभी के स्थापित कार्यान्वयन की आवश्यकता होती है।[13] मोटे तौर पर, एल्गोरिथ्म में निम्नलिखित विशेषताएं हैं:[14][15]
- 2डी ब्लॉक में चक्रीय डेटा वितरण
- लुक-फॉरवर्ड (एलयू कारकीकरण) की विभिन्न गहराइयों के साथ सही दिखने वाले वेरिएंट का उपयोग आगे देखो (LU फ़ैक्टराइज़ेशन)|लुक-फॉरवर्ड
- पुनरावर्ती पैनल फ़ैक्टराइज़ेशन
- छह अलग-अलग पैनल प्रसारण (कंप्यूटिंग) वेरिएंट
- बैंडविड्थ कम करने वाला स्वैप-प्रसारण एल्गोरिदम
- गहराई 1 के आगे देखने के साथ पिछड़ा प्रतिस्थापन
आलोचना
कहा जाता है कि LINPACK बेंचमार्क स्केलेबिलिटी के कारण सफल हुआ है[16] एचपीएलइनपैक की, तथ्य यह है कि यह एक एकल संख्या उत्पन्न करता है, जिससे परिणाम आसानी से तुलनीय हो जाते हैं और व्यापक ऐतिहासिक डेटा बेस इससे जुड़ा होता है।[17] हालाँकि, इसके जारी होने के तुरंत बाद, LINPACK बेंचमार्क की प्रदर्शन स्तर प्रदान करने के लिए आलोचना की गई थी जो आम तौर पर सभी के लिए अप्राप्य था, लेकिन बहुत कम प्रोग्रामर जो उस मशीन और अकेले उस मशीन के लिए अपने कोड को अनुकूलित करते थे,[18] क्योंकि यह केवल सघन रैखिक प्रणाली के रिज़ॉल्यूशन का परीक्षण करता है, जो आमतौर पर वैज्ञानिक कंप्यूटिंग में किए जाने वाले सभी ऑपरेशनों का प्रतिनिधित्व नहीं करता है।[19] लिनपैक बेंचमार्क के पीछे मुख्य प्रेरक शक्ति जैक डोंगर्रा ने कहा कि, हालांकि वे केवल चरम सीपीयू गति और सीपीयू की संख्या पर जोर देते हैं, स्थानीय बैंडविड्थ और नेटवर्क पर पर्याप्त जोर नहीं दिया जाता है।[20] सुपरकंप्यूटिंग अनुप्रयोगों के लिए राष्ट्रीय केंद्र के निदेशक थॉम डनिंग जूनियर ने लिनपैक बेंचमार्क के बारे में यह कहा: लिनपैक बेंचमार्क उन दिलचस्प घटनाओं में से एक है - लगभग कोई भी जो इसके बारे में जानता है वह इसकी उपयोगिता का उपहास करेगा। वे इसकी सीमाएं समझते हैं लेकिन इसमें माइंडशेयर है क्योंकि यह एक ऐसा नंबर है जिसे हम सभी ने वर्षों से खरीदा है।[21] डोंगरा के अनुसार, टॉप500 के आयोजक सक्रिय रूप से बेंचमार्क रिपोर्टिंग के दायरे का विस्तार करना चाह रहे हैं क्योंकि किसी दिए गए सिस्टम के लिए अधिक प्रदर्शन विशेषता और हस्ताक्षर शामिल करना महत्वपूर्ण है।[22] TOP500 के लिए बेंचमार्क का विस्तार करने के लिए जिन संभावनाओं पर विचार किया जा रहा है उनमें से एक एचपीसी चैलेंज बेंचमार्क सूट है।[23] पेटास्केल कंप्यूटिंग के आगमन के साथ, प्रति सेकंड ट्रैवर्स किए गए किनारे लिनपैक द्वारा मापे गए फ्लॉप्स के पूरक मीट्रिक के रूप में उभरने लगे हैं। ऐसा ही एक अन्य मीट्रिक एचपीसीजी बेंचमार्क है, जो डोंगर्रा द्वारा प्रस्तावित है।[24]
चलने का समय मुद्दा
जैक डोंगर्रा के अनुसार, एचपीलिनपैक के साथ अच्छे प्रदर्शन परिणाम प्राप्त करने के लिए आवश्यक रनिंग टाइम में वृद्धि होने की उम्मीद है। 2010 में आयोजित एक सम्मेलन में, उन्होंने कहा कि उन्हें कुछ वर्षों में 2.5 दिनों के चलने की उम्मीद है।[25]
यह भी देखें
संदर्भ
- ↑ 1.0 1.1 "The Linpack Benchmark, TOP500 Supercomputing Sites". Retrieved 2015-02-10.
- ↑ 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
- ↑ Jack Dongarra interview by Sander Olson, archived from the original on 2016-03-04, retrieved 2012-01-13
- ↑ Dongarra, J.J.; Moler, C.B.; Bunch, J.R.; Stewart, G.W. (1979), LINPACK: users' guide, SIAM, ISBN 9780898711721
- ↑ 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
- ↑ High Performance Linpack Benchmark (PDF), retrieved 2015-02-10
- ↑ 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) - ↑ "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.
- ↑ "LINPACK FAQ - To what accuracy must be the solution conform?". Retrieved 2015-02-10.
- ↑ "Linpack benchmark program in Fortran". Retrieved 2015-02-10.
- ↑ "Linpack benchmark program in C". Retrieved 2015-02-10.
- ↑ "Linpack benchmark program in Java". Retrieved 2015-02-10.
- ↑ "HPL - A Portable Implementation of the High-Performance Linpack Benchmark for Distributed-Memory Computers". Retrieved 2015-02-10.
- ↑ "HPL algorithm".
- ↑ "HPL overview". Retrieved 2015-02-10.
- ↑ "AN INTERVIEW WITH SUPERCOMPUTING LEGEND JACK DONGARRA". 2002-05-24.
- ↑ 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.
- ↑ Hammond, Steven (1995), Beyond Machoflops: Getting MPPs Into the Production Environment
- ↑ Gahvari, Hormozd; Hoemmen, Mark; Demmel, James; Yelick, Katherine (2006), "Benchmarking Sparse Matrix-Vector Multiply in Five Minutes", SPEC Benchmark Workshop (PDF)
- ↑ Dongarra, Jack J. (2007), "The HPC Challenge Benchmark: A Candidate for Replacing Linpack in the Top500?", SPEC Benchmark Workshop (PDF)
- ↑ Christopher Mims (2010-11-08). "Why China's New Supercomputer Is Only Technically the World's Fastest". Retrieved 2011-09-22.
- ↑ Meuer, Martin (2002-05-24). "AN INTERVIEW WITH SUPERCOMPUTING LEGEND JACK DONGARRA". Retrieved 2022-12-01.
- ↑ 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)
- ↑ Hemsoth, Nicole (June 26, 2014). "नया एचपीसी बेंचमार्क आशाजनक परिणाम देता है". HPCWire. Retrieved 2022-12-01.
- ↑ Dongarra, Jack J. (2010). LINPACK Benchmark with Time Limits on Multicore & GPU Based Accelerators (PDF). International Supercomputing Conference.