NAS Parallel Benchmarks: Difference between revisions

Content deleted Content added
m fix link wrongly modified in previous edit
History: added npb 3
Line 1:
{{Infobox Software
|name=NAS Parallel Benchmarks
|author=[[NASA Numerical Aerodynamic Simulation Program]]
|developer=[[NASA Advanced Supercomputing facility|NASA Advanced Supercomputing Division]]
|release={{Start date|1991}}
|latest release version=3.3
Line 9:
|website=http://www.nas.nasa.gov/Software/NPB/
}}
The '''NAS Parallel Benchmarks''' ('''NPB''') are a set of [[benchmark (computing)|benchmark]]s targeting performance evaluation of highly parallel [[supercomputer]]s. They are developed and maintained by the [[NASA]] [[NASA Advanced Supercomputing facilityDivision|NASA Advanced Supercomputing (NAS) Division]] (formerly the [[NASA]] [[NASA Numerical Aerodynamic Simulation Program|Numerical Aerodynamic Simulation Program]]) based at the [[NASA Ames Research Center]]. NAS solicits performance results for NPB from all sources.<ref name="npbweb">{{cite web
|title=NAS Parallel Benchmarks Changes
|url=http://www.nas.nasa.gov/Resources/Software/npb.html
|publisher=[[NASA Advanced Supercomputing facility|NASA Advanced Supercomputing Division]]
|accessdate=2009-02-23
}}</ref>
Line 50:
|publisher=NASA Ames Research Center, Moffett Field, CA
|year=December 1995
}}</ref> and released in 1992<ref name="nas03002">{{Citation
}}
</ref> and released in 1992<ref name="nas03002">{{Citation
|last1=Wong|first1=P.
|last2=van der Wijngaart|first2=R.
Line 59 ⟶ 58:
|publisher=NASA Ames Research Center, Moffett Field, CA
|year=January 2003
}}</ref> to address the ensuing lack of benchmarks applicable to highly parallel machines.
}}
</ref>to address the ensuing lack of benchmarks applicable to highly parallel machines.
 
===NPB 1===
Line 71 ⟶ 69:
In the light of these guidelines, it was deemed the only viable approach to use a collection of "paper-and-pencil" benchmarks that specified a set of problems only algorithmically and left most implementation details to the implementor's discretion under certain necessary limits.
 
NPB 1 defined eight benchmarks, each in two problem sizes dubbed ''Class A'' and ''Class B''. Sample code written in [[Fortran#FORTRAN_77|Fortran 77]] was supplied but not intended for benchmarking purposes.<ref name="rnr94007"/>
 
===NPB 2===
Line 84 ⟶ 82:
|contribution-url=http://www.nas.nasa.gov/Resources/Software/npb_2.2.pdf
|publisher=NASA Ames Research Center, Moffett Field, CA
}}</ref><ref name="nas02007">{{Citation
}}
</ref><ref name="nas02007">{{Citation
|last1=van der Wijngaart|first1=R.
|contribution=NAS Parallel Benchmarks Version 2.4
Line 92 ⟶ 89:
|year=October 2002
|publisher=NASA Ames Research Center, Moffett Field, CA
}}</ref>, came with source code implementations for five out of eight benchmarks defined in NPB 1 to supplement but not replace NPB 1. It extended the benchmarks with an up-to-date problem size ''Class C''. It also amended the rules for submitting benchmarking results. The new rules included explicit requests for output files as well as modified source files and build scripts to ensure public availability of the modifications and reproducibility of the results.<ref name="nas95020"/>
}}
</ref>, came with source code implementations for five out of eight benchmarks defined in NPB 1 to supplement but not replace NPB 1. It extended the benchmarks with an up-to-date problem size ''Class C''. It also amended the rules for submitting benchmarking results. The new rules included explicit requests for output files as well as modified source files and build scripts to ensure public availability of the modifications and reproducibility of the results.<ref name=nas95020/>
 
NPB 2.2 contained implementations of two more benchmarks.<ref name="npb2.2"/> NPB 2.3 of 1997 was the first complete implemetation in [[Message Passing Interface|MPI]].<ref name="nas03002"/> NPBIt 2.4shipped ofwith 2002serial offeredversions aof newthe MPIbenchmarks implementationconsistent andwith introducedthe anotherparallel stillversions largerand problemdefine sizea ''Class DW'' asproblem well assize anfor [[Input/output|I/O]]small-intensivememory benchmarksystems.<ref name="nas03002npbchanges"/><ref{{cite name="nas02007"/>web
|title=NAS Parallel Benchmarks Changes
|url=http://www.nas.nasa.gov/Resources/Software/npb_changes.html
|publisher=[[NASA Advanced Supercomputing Division]]
|accessdate=2009-03-17
}}</ref> NPB 2.4 of 2002 offered a new MPI implementation and introduced another still larger problem size ''Class D'' as well as an [[Input/output|I/O]]-intensive benchmark.<ref name="nas03002"/><ref name="nas02007"/>
 
===NPB 3===
NPB 3 retained the MPI implementation from NPB 2 and came in more flavors, namely [[OpenMP]]<ref name="nas99011">{{Citation
|last1=Jin|first1=H.
|last2=Frumkin|first2=M.
|last3=Yan|first3=J.
|contribution=The OpenMP Implementation of NAS Parallel Benchmarks and Its Performance
|contribution-url=http://www.nas.nasa.gov/News/Techreports/1999/PDF/nas-99-011.pdf
|title=NAS Technical Report NAS-99-011
|year=October 1999
|publisher=NASA Ames Research Center, Moffett Field, CA
}}</ref>, [[Java]]<ref name="nas02009">{{Citation
|last1=Frumkin|first1=M.
|last2=Schultz|first2=M.
|last3=Jin|first3=H.
|last4=Yan|first4=J.
|contribution=Implementation of the NAS Parallel Benchmarks in Java
|contribution-url=http://www.nas.nasa.gov/News/Techreports/2002/PDF/nas-02-009.pdf
|title=NAS Technical Report NAS-02-009
|publisher=NASA Ames Research Center, Moffett Field, CA
}}</ref> and [[High Performance Fortran]]<ref name="nas98009">{{Citation
|last1=Frumkin|first1=M.
|last2=Jin|first2=H.
|last3=Yan|first3=J.
|contribution=Implementation of NAS Parallel Benchmarks in High Performance Fortran
|contribution-url=http://www.nas.nasa.gov/News/Techreports/1998/PDF/nas-98-009.pdf
|title=NAS Technical Report NAS-98-009
|year=September 1998
|publisher=NASA Ames Research Center, Moffett Field, CA
}}</ref>. These new parallel implementations were from derived the serial codes in NPB 2.3 with additional optimizations.<ref name="npbchanges"/> NPB 3.1 and NPB 3.2 added three more benchmarks, which, however, were not available across all implementations; NPB 3.3 introduced a ''Class E'' problem size.<ref name="npbchanges"/> Based on the single-zone NPB 3, a set of multi-zone benchmarks taking advantage of the MPI/OpenMP hybrid programming model were released under the name '''NPB-Multi-Zone''' ('''NPB-MZ''') for "testing the effectiveness of multi-level and hybrid parallelization paradigms and tools".<ref name="npbweb"/><ref name="nas03010">{{Citation
|last1=van der Wijngaart|first1=R.
|last2=Jin|first2=H.
|contribution=NAS Parallel Benchmarks, Multi-Zone Versions
|contribution-url=http://www.nas.nasa.gov/News/Techreports/2003/PDF/nas-03-010.pdf
|title=NAS Technical Report NAS-03-010
|year=July 2003
|publisher=NASA Ames Research Center, Moffett Field, CA
}}</ref>
 
==References==