Content deleted Content added
→ The benchmarks: new section; corrections/modifications in various places |
Update citation PDF URLs, correct typo in author name |
||
(32 intermediate revisions by 23 users not shown) | |||
Line 1:
{{Infobox
|name=NAS Parallel Benchmarks
|author=NASA Numerical Aerodynamic Simulation Program
|developer=[[NASA Advanced Supercomputing Division]]
|
|latest release version=3.
▲|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 Division|Advanced Supercomputing (NAS) Division]] (formerly the NASA 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▼
▲
==History== ▼
===Motivation===
Traditional benchmarks that existed before NPB, such as the [[Livermore loops]], the [[LINPACK|LINPACK Benchmark]] and the [
|last1=
|last2=
|last3=Barton|first3=J.
|last4=Browning|first4=D.
Line 28 ⟶ 22:
|last8=Fineberg|first8=S.
|last9=Frederickson|first9=P.
|last10=Lasinski|first10=T.▼
|contribution=The NAS Parallel Benchmarks
|contribution-url=
|title=NAS Technical Report RNR-94-007
|publisher=NASA Ames Research Center, Moffett Field, CA
|
|postscript=<!--none-->
}}</ref> As a result, NPB were developed in 1991<ref name="nas95020">{{Citation
|last1=Bailey|first1=D.
Line 46 ⟶ 37:
|last6=Yarrow|first6=M.
|contribution=The NAS Parallel Benchmarks 2.0
|contribution-url=
|title=NAS Technical Report NAS-95-020
|publisher=NASA Ames Research Center, Moffett Field, CA
|
|postscript=<!--none-->
}}</ref> and released in 1992<ref name="nas03002">{{Citation
|last1=Wong|first1=P.
|last2=van der Wijngaart|first2=R.
|contribution=NAS Parallel Benchmarks I/O Version 2.4
|contribution-url=
|title=NAS Technical Report NAS-03-002
|publisher=NASA Ames Research Center, Moffett Field, CA
|
|postscript=<!--none-->
}}</ref> to address the ensuing lack of benchmarks applicable to highly parallel machines.
Line 67 ⟶ 60:
* capability of accommodating new systems with increased power,
* and ready distributability.
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
NPB 1 defined eight benchmarks, each in two problem sizes dubbed ''Class A'' and ''Class B''. Sample codes written in [[Fortran#
===NPB 2===
Since its release, NPB 1 displayed two major weaknesses. Firstly, due to its "paper
NPB 2, released in 1996,<ref name="npb2.2">{{Citation
|last1=Saphir|first1=W.
|last2=van der Wijngaart|first2=R.
|last3=Woo|first3=A.
|last4=Yarrow|first4=M.
|
|
|publisher=NASA Ames Research Center, Moffett Field, CA
|postscript=<!--none-->
}}</ref><ref name="nas02007">{{Citation
|last1=van der Wijngaart|first1=R.
|contribution=NAS Parallel Benchmarks Version 2.4
|contribution-url=
|title=NAS Technical Report NAS-02-007
|
|publisher=NASA Ames Research Center, Moffett Field, CA
|postscript=<!--none-->
}}</ref>
NPB 2.2 contained implementations of two more benchmarks.<ref name="npb2.2"/> NPB 2.3 of 1997 was the first complete
|title=NAS Parallel Benchmarks Changes
|url=http://www.nas.nasa.gov/Resources/Software/npb_changes.html
Line 99 ⟶ 94:
===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=
|title=NAS Technical Report NAS-99-011
|
|publisher=NASA Ames Research Center, Moffett Field, CA
|postscript=<!--none-->
}}</ref>
|last1=Frumkin|first1=M.
|last2=Schultz|first2=M.
Line 114 ⟶ 110:
|last4=Yan|first4=J.
|contribution=Implementation of the NAS Parallel Benchmarks in Java
|contribution-url=
|title=NAS Technical Report NAS-02-009
|publisher=NASA Ames Research Center, Moffett Field, CA
|postscript=<!--none-->
}}</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=
|title=NAS Technical Report NAS-98-009
|
|publisher=NASA Ames Research Center, Moffett Field, CA
|postscript=<!--none-->
}}</ref>
|last1=Feng|first1=H.
|last2=van der Wijngaart|first2=F.
|last3=Biswas|first3=R.
|last4=Mavriplis|first4=C.|author4-link=Catherine Mavriplis
|contribution=Unstructured Adaptive (UA) NAS Parallel Benchmark, Version 1.0
|contribution-url=
|title=NAS Technical Report NAS-04-006
|
|publisher=NASA Ames Research Center, Moffett Field, CA
|postscript=<!--none-->
}}</ref><ref name="nas04013">{{Citation
|last1=Frumkin|first1=M.
|last2=Shabanov|first2=L.
|contribution=Benchmarking Memory Performance with the Data Cube Operator
|contribution-url=
|title=NAS Technical Report NAS-04-013
|
|publisher=NASA Ames Research Center, Moffett Field, CA
|postscript=<!--none-->
}}</ref>
|last1=van der Wijngaart|first1=R.
|last2=Jin|first2=H.
|contribution=NAS Parallel Benchmarks, Multi-Zone Versions
|contribution-url=
|title=NAS Technical Report NAS-03-010
|
|publisher=NASA Ames Research Center, Moffett Field, CA
|postscript=<!--none-->
}}</ref>
Line 158 ⟶ 159:
{| class="wikitable"
! Benchmark !! Name derived from<ref name="rnr94007"/> !!
|-
| MG ||
| rowspan="8" | NPB 1<ref name="rnr94007"/>
| Approximate the solution to a three-dimensional [[discrete Poisson equation]] using the V-cycle [[multigrid method]] ||
|-
| CG ||
| Estimate the smallest [[eigenvalue]] of a large [[Sparse matrix|sparse]] [[Symmetric matrix|symmetric]] [[positive-definite matrix]] using the [[inverse iteration]] with the [[conjugate gradient method]] as a subroutine for solving [[System of linear equations|systems of linear equations]] ||
|-
| FT ||
| Solve a three-dimensional [[partial differential equation]] (PDE) using the [[fast Fourier transform]] (FFT) ||
|-
| IS || [[Integer sorting|'''I'''nteger
| Sort small integers using the [[bucket sort]]<ref name="npb2.2"/> ||
|-
| EP || [[Embarrassingly parallel|'''E'''mbarrassingly '''P'''arallel]]
| Generate independent [[Normal distribution|Gaussian]] [[random variate]]s using the [[Marsaglia polar method]] ||
|-
| BT ||
| rowspan="3" | Solve a synthetic system of [[Nonlinear system#Partial differential equations|nonlinear PDEs]] using three different algorithms involving [[Block matrix#Block tridiagonal matrices|block tridiagonal]], scalar [[Pentadiagonal matrix|pentadiagonal]] and symmetric [[successive over-relaxation]] (SSOR) solver kernels, respectively
| rowspan="3" |
* The BT benchmark has I/O-intensive subtypes<ref name="nas03002"/>
* All three benchmarks have multi-zone versions<ref name="nas03010"/>
|-
| SP ||
|-
| LU || [[Triangular matrix#Forward and back substitution|'''L'''ower-'''U'''pper]] symmetric [[Gauss–Seidel method|Gauss-Seidel]]<ref name="
|-
| UA || '''U'''nstructured '''A'''daptive<ref name="nas04006
| rowspan="2" | NPB 3.1<ref name="npbchanges"/> || Solve [[Heat equation]] with convection and diffusion from moving ball. Mesh is adaptive and recomputed at every 5th step.||
|-
| DC || [[Data cube|'''D'''ata '''C'''ube]] operator<ref name="nas04013"/> ||
|-
| DT || '''D'''ata '''T'''raffic<ref name="npbchanges"/> || NPB 3.2<ref name="npbchanges"/> || ||
|}
==References==
{{Reflist}}
== External links ==
* [http://www.nas.nasa.gov/Software/NPB/ NAS Parallel Benchmarks Changes] (official website)
▲[[Category:Computer benchmarks]]
|