एनएएस समानांतर बेंचमार्क

एनएएस पैरेलल बेंचमार्क (एनपीबी) अत्यधिक पैरेलल सुपर कंप्यूटर के प्रदर्शन मूल्यांकन को लक्षित करने वाले बेंचमार्क का सेट है। इन्हें नासा एम्स रिसर्च सेंटर स्थित नासा एडवांस्ड सुपरकंप्यूटिंग (एनएएस) डिवीजन (पूर्व में नासा न्यूमेरिकल एयरोडायनामिक सिमुलेशन प्रोग्राम) द्वारा विकसित एवं सुरक्षित किया जाता है। एनएएस सभी स्रोतों से एनपीबी के लिए प्रदर्शन परिणाम का अनुरोध करता है।

प्रेरणा
पारंपरिक बेंचमार्क जो एनपीबी से पूर्व सम्मिलित थे, जैसे कि लिवरमोर लूप्स, लिनपैक एवं एनएएस कर्नेल बेंचमार्क प्रोग्राम, सामान्यतः वेक्टर कंप्यूटरों के लिए विशिष्ट थे। वे सामान्यतः समानता-बाधक ट्यूनिंग प्रतिबंधों एवं अपर्याप्त समस्या आकार सहित अपर्याप्तताओं से प्रभावित थे, जिसने उन्हें अत्यधिक पैरेलल सिस्टम के लिए अनुपयुक्त बना दिया। उच्च पोर्टिंग व्यय एवं स्वचालित सॉफ़्टवेयर पैरेललकरण टूल की अनुपलब्धता के कारण पूर्ण-स्तरीय एप्लिकेशन बेंचमार्क समान रूप से अनुपयुक्त थे। परिणामस्वरूप, एनपीबी को 1991 में विकसित किया गया एवं 1992 में प्रारम्भ हुई जिससे अत्यधिक पैरेलल मशीनों पर प्रस्तावित होने वाले बेंचमार्क की कमी को दूर किया जा सकता है।

एनपीबी 1
एनपीबी के पूर्व विनिर्देश में यह माना गया कि बेंचमार्क में विशेषताएं होनी चाहिए, इन दिशानिर्देशों के आलोक में, पेपर एंड पेंसिल बेंचमार्क के संग्रह का उपयोग करना मात्र व्यवहार्य दृष्टिकोण माना गया था जो केवल एल्गोरिदम के अनुसार समस्याओं का सेट निर्दिष्ट करता था एवं कुछ आवश्यक सीमाओं के अंतर्गत अधिकांश कार्यान्वयन विवरणों को कार्यान्वयनकर्ता के विवेक पर छोड़ देता था।
 * नवीन पैरेलल-अवगत एल्गोरिथम एवं सॉफ़्टवेयर विधियाँ,
 * सामान्यता एवं वास्तुकला तटस्थता,
 * परिणामों एवं प्रदर्शन के आंकड़ों की शुद्धता की सरल सत्यापन क्षमता,
 * बढ़ी हुई शक्ति के साथ नवीन सिस्टम्स को समायोजित करने की क्षमता,
 * एवं तैयार वितरण क्षमता

एनपीबी 1 ने आठ बेंचमार्क परिभाषित किए, प्रत्येक को दो समस्या आकारों में क्लास A एवं क्लास B कहा गया। फोरट्रान 77 में लिखे गए प्रतिरूप कोड प्रदान किए गए थे। उन्होंने छोटे समस्या आकार वर्ग S का उपयोग किया एवं बेंचमार्किंग उद्देश्यों के लिए नहीं थे।

एनपीबी 2

अपने प्रचलन के पश्चात से, एनपीबी 1 ने दो प्रमुख कमज़ोरियाँ प्रदर्शित कीं हैं। सबसे पूर्व, इसके पेपर एंड पेंसिल विनिर्देश के कारण, कंप्यूटर विक्रेताओं ने सामान्यतः अपने कार्यान्वयन को अत्यधिक समायोजित किया जिससे वैज्ञानिक प्रोग्रामर के लिए उनका प्रदर्शन प्राप्त करना कठिन हो जाता है। दूसरे, इनमें से कई कार्यान्वयन मालिकाना थे एवं सार्वजनिक रूप से उपलब्ध नहीं थे, जिससे उनकी अनुकूलन प्रौद्योगिकी को प्रभावी रूप से छुपाया गया है। दूसरे, एनपीबी 1 का समस्या आकार सुपर कंप्यूटर के विकास से पीछे रह गया क्योंकि पश्चात में इसका विकास प्रस्तुत रहा है।

एनपीबी 2, 1996 में प्रारम्भ किया गया, एनपीबी 1 में परिभाषित आठ बेंचमार्क में से पांच के लिए स्रोत कोड कार्यान्वयन के साथ आया, जो एनपीबी 1 को पूरक करता है किन्तु प्रतिस्थापित नहीं करता है। इसने बेंचमार्क को अप-टू-डेट समस्या आकार क्लास C के साथ बढ़ाया गया है। इसने बेंचमार्किंग परिणाम प्रस्तुत करने के नियमों में भी संशोधन किया है। नवीन नियमों में आउटपुट फ़ाइलों के साथ-साथ संशोधित स्रोत फ़ाइलों के लिए स्पष्ट अनुरोध एवं संशोधनों की सार्वजनिक उपलब्धता एवं परिणामों की पुनरुत्पादकता सुनिश्चित करने के लिए स्क्रिप्ट का निर्माण सम्मिलित था।

एनपीबी 2.2 में दो बेंचमार्क का कार्यान्वयन सम्मिलित था। 1997 का एनपीबी 2.3 संदेश पासिंग इंटरफ़ेस में प्रथम पूर्ण कार्यान्वयन था। इसे पैरेलल संस्करणों के अनुरूप बेंचमार्क के सीरियल संस्करणों के साथ भेजा गया एवं छोटे-मेमोरी सिस्टम के लिए समस्या आकार क्लास W को परिभाषित किया गया है। 2002 के एनपीबी 2.4 ने नवीन एमपीआई कार्यान्वयन एवं बड़ी समस्या आकार क्लास D की प्रस्तुति की है। इसने इनपुट/आउटपुट सघन उपप्रकारों के साथ बेंचमार्क भी बढ़ाया है।

एनपीबी 3

एनपीबी 3 ने एनपीबी 2 से एमपीआई कार्यान्वयन को स्थिर रखा एवं ओपनएमपी, जावा एवं उच्च प्रदर्शन फोरट्रान नामक अधिक फ्लेवर में आया है। ये नवीन पैरेलल कार्यान्वयन अतिरिक्त अनुकूलन के साथ एनपीबी 2.3 में सीरियल कोड से प्राप्त किए गए थे। एनपीबी 3.1 एवं एनपीबी 3.2 ने तीन बेंचमार्क जोड़े,  चूँकि, जो सभी कार्यान्वयनों में उपलब्ध नहीं थे; एनपीबी 3.3 ने क्लास E समस्या आकार प्रस्तुत किया है। सिंगल-ज़ोन एनपीबी 3 के आधार पर, एमपीआई/ओपनएमपी हाइब्रिड प्रोग्रामिंग मॉडल का लाभ उठाते हुए मल्टी-लेवल एवं हाइब्रिड पैरेललीकरण प्रतिमानों एवं उपकरणों की प्रभावशीलता का परीक्षण करने के लिए एनपीबी-मल्टी-ज़ोन (एनपीबी-एमजेड) नाम के अंतर्गत मल्टी-ज़ोन बेंचमार्क का सेट प्रस्तुत किया गया था।

मानदंड
एनपीबी 3.3 के अनुसार, ग्यारह बेंचमार्क को निम्नलिखित सूची में संक्षेप में परिभाषित किया गया है।

बाहरी संबंध

 * एनएएस Parallel Benchmarks Changes (official website)