Menu
Home Explore People Places Arts History Plants & Animals Science Life & Culture Technology
On this page
NAS Parallel Benchmarks
Set of benchmarks developed by the NASA for measuring the performance of supercomputers

NAS Parallel Benchmarks (NPB) are a set of benchmarks targeting performance evaluation of highly parallel supercomputers. They are developed and maintained by the NASA 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.

We don't have any images related to NAS Parallel Benchmarks yet.
We don't have any YouTube videos related to NAS Parallel Benchmarks yet.
We don't have any PDF documents related to NAS Parallel Benchmarks yet.
We don't have any Books related to NAS Parallel Benchmarks yet.
We don't have any archived web articles related to NAS Parallel Benchmarks yet.

History

Motivation

Traditional benchmarks that existed before NPB, such as the Livermore loops, the LINPACK Benchmark and the NAS Kernel Benchmark Program, were usually specialized for vector computers. They generally suffered from inadequacies including parallelism-impeding tuning restrictions and insufficient problem sizes, which rendered them inappropriate for highly parallel systems. Equally unsuitable were full-scale application benchmarks due to high porting cost and unavailability of automatic software parallelization tools.2 As a result, NPB were developed in 19913 and released in 19924 to address the ensuing lack of benchmarks applicable to highly parallel machines.

NPB 1

The first specification of NPB recognized that the benchmarks should feature

  • new parallel-aware algorithmic and software methods,
  • genericness and architecture neutrality,
  • easy verifiability of correctness of results and performance figures,
  • 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 implementer's discretion under certain necessary limits.

NPB 1 defined eight benchmarks, each in two problem sizes dubbed Class A and Class B. Sample codes written in Fortran 77 were supplied. They used a small problem size Class S and were not intended for benchmarking purposes.5

NPB 2

Since its release, NPB 1 displayed two major weaknesses. Firstly, due to its "paper-and-pencil" specification, computer vendors usually highly tuned their implementations so that their performance became difficult for scientific programmers to attain. Secondly, many of these implementation were proprietary and not publicly available, effectively concealing their optimizing techniques. Secondly, problem sizes of NPB 1 lagged behind the development of supercomputers as the latter continued to evolve.6

NPB 2, released in 1996,78 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.9

NPB 2.2 contained implementations of two more benchmarks.10 NPB 2.3 of 1997 was the first complete implementation in MPI.11 It shipped with serial versions of the benchmarks consistent with the parallel versions and defined a problem size Class W for small-memory systems.12 NPB 2.4 of 2002 offered a new MPI implementation and introduced another still larger problem size Class D.13 It also augmented one benchmark with I/O-intensive subtypes.14

NPB 3

NPB 3 retained the MPI implementation from NPB 2 and came in more flavors, namely OpenMP,15 Java16 and High Performance Fortran.17 These new parallel implementations were derived from the serial codes in NPB 2.3 with additional optimizations.18 NPB 3.1 and NPB 3.2 added three more benchmarks,1920 which, however, were not available across all implementations; NPB 3.3 introduced a Class E problem size.21 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".2223

The benchmarks

As of NPB 3.3, eleven benchmarks are defined as summarized in the following table.

BenchmarkName derived from24Available sinceDescription25Remarks
MGMultiGridNPB 126Approximate the solution to a three-dimensional discrete Poisson equation using the V-cycle multigrid method
CGConjugate GradientEstimate the smallest eigenvalue of a large sparse symmetric positive-definite matrix using the inverse iteration with the conjugate gradient method as a subroutine for solving systems of linear equations
FTFast Fourier TransformSolve a three-dimensional partial differential equation (PDE) using the fast Fourier transform (FFT)
ISInteger SortSort small integers using the bucket sort27
EPEmbarrassingly ParallelGenerate independent Gaussian random variates using the Marsaglia polar method
BTBlock TridiagonalSolve a synthetic system of nonlinear PDEs using three different algorithms involving block tridiagonal, scalar pentadiagonal and symmetric successive over-relaxation (SSOR) solver kernels, respectively
  • The BT benchmark has I/O-intensive subtypes28
  • All three benchmarks have multi-zone versions29
SPScalar Pentadiagonal30
LULower-Upper symmetric Gauss-Seidel31
UAUnstructured Adaptive32NPB 3.133Solve Heat equation with convection and diffusion from moving ball. Mesh is adaptive and recomputed at every 5th step.
DCData Cube operator34
DTData Traffic35NPB 3.236

References

  1. "NAS Parallel Benchmarks Changes". NASA Advanced Supercomputing Division. Retrieved 2009-02-23. https://www.nas.nasa.gov/Resources/Software/npb.html

  2. Baily, D.; Barszcz, E.; Barton, J.; Browning, D.; Carter, R.; Dagum, L.; Fatoohi, R.; Fineberg, S.; Frederickson, P.; Weeratunga, S. (March 1994), "The NAS Parallel Benchmarks" (PDF), NAS Technical Report RNR-94-007, NASA Ames Research Center, Moffett Field, CA https://www.nas.nasa.gov/assets/pdf/techreports/1994/rnr-94-007.pdf

  3. Bailey, D.; Harris, T.; Saphir, W.; van der Wijngaart, R.; Woo, A.; Yarrow, M. (December 1995), "The NAS Parallel Benchmarks 2.0" (PDF), NAS Technical Report NAS-95-020, NASA Ames Research Center, Moffett Field, CA https://www.nas.nasa.gov/News/Techreports/1995/PDF/nas-95-020.pdf

  4. Wong, P.; van der Wijngaart, R. (January 2003), "NAS Parallel Benchmarks I/O Version 2.4" (PDF), NAS Technical Report NAS-03-002, NASA Ames Research Center, Moffett Field, CA https://www.nas.nasa.gov/News/Techreports/2003/PDF/nas-03-002.pdf

  5. Baily, D.; Barszcz, E.; Barton, J.; Browning, D.; Carter, R.; Dagum, L.; Fatoohi, R.; Fineberg, S.; Frederickson, P.; Weeratunga, S. (March 1994), "The NAS Parallel Benchmarks" (PDF), NAS Technical Report RNR-94-007, NASA Ames Research Center, Moffett Field, CA https://www.nas.nasa.gov/assets/pdf/techreports/1994/rnr-94-007.pdf

  6. Bailey, D.; Harris, T.; Saphir, W.; van der Wijngaart, R.; Woo, A.; Yarrow, M. (December 1995), "The NAS Parallel Benchmarks 2.0" (PDF), NAS Technical Report NAS-95-020, NASA Ames Research Center, Moffett Field, CA https://www.nas.nasa.gov/News/Techreports/1995/PDF/nas-95-020.pdf

  7. Saphir, W.; van der Wijngaart, R.; Woo, A.; Yarrow, M., New Implementations and Results for the NAS Parallel Benchmarks 2 (PDF), NASA Ames Research Center, Moffett Field, CA https://www.nas.nasa.gov/Resources/Software/npb_2.2.pdf

  8. van der Wijngaart, R. (October 2002), "NAS Parallel Benchmarks Version 2.4" (PDF), NAS Technical Report NAS-02-007, NASA Ames Research Center, Moffett Field, CA https://www.nas.nasa.gov/assets/pdf/techreports/2002/nas-02-007.pdf

  9. Bailey, D.; Harris, T.; Saphir, W.; van der Wijngaart, R.; Woo, A.; Yarrow, M. (December 1995), "The NAS Parallel Benchmarks 2.0" (PDF), NAS Technical Report NAS-95-020, NASA Ames Research Center, Moffett Field, CA https://www.nas.nasa.gov/News/Techreports/1995/PDF/nas-95-020.pdf

  10. Saphir, W.; van der Wijngaart, R.; Woo, A.; Yarrow, M., New Implementations and Results for the NAS Parallel Benchmarks 2 (PDF), NASA Ames Research Center, Moffett Field, CA https://www.nas.nasa.gov/Resources/Software/npb_2.2.pdf

  11. Wong, P.; van der Wijngaart, R. (January 2003), "NAS Parallel Benchmarks I/O Version 2.4" (PDF), NAS Technical Report NAS-03-002, NASA Ames Research Center, Moffett Field, CA https://www.nas.nasa.gov/News/Techreports/2003/PDF/nas-03-002.pdf

  12. "NAS Parallel Benchmarks Changes". NASA Advanced Supercomputing Division. Retrieved 2009-03-17. https://www.nas.nasa.gov/Resources/Software/npb_changes.html

  13. van der Wijngaart, R. (October 2002), "NAS Parallel Benchmarks Version 2.4" (PDF), NAS Technical Report NAS-02-007, NASA Ames Research Center, Moffett Field, CA https://www.nas.nasa.gov/assets/pdf/techreports/2002/nas-02-007.pdf

  14. Wong, P.; van der Wijngaart, R. (January 2003), "NAS Parallel Benchmarks I/O Version 2.4" (PDF), NAS Technical Report NAS-03-002, NASA Ames Research Center, Moffett Field, CA https://www.nas.nasa.gov/News/Techreports/2003/PDF/nas-03-002.pdf

  15. Jin, H.; Frumkin, M.; Yan, J. (October 1999), "The OpenMP Implementation of NAS Parallel Benchmarks and Its Performance" (PDF), NAS Technical Report NAS-99-011, NASA Ames Research Center, Moffett Field, CA https://www.nas.nasa.gov/News/Techreports/1999/PDF/nas-99-011.pdf

  16. Frumkin, M.; Schultz, M.; Jin, H.; Yan, J., "Implementation of the NAS Parallel Benchmarks in Java" (PDF), NAS Technical Report NAS-02-009, NASA Ames Research Center, Moffett Field, CA https://www.nas.nasa.gov/News/Techreports/2002/PDF/nas-02-009.pdf

  17. Frumkin, M.; Jin, H.; Yan, J. (September 1998), "Implementation of NAS Parallel Benchmarks in High Performance Fortran" (PDF), NAS Technical Report NAS-98-009, NASA Ames Research Center, Moffett Field, CA https://www.nas.nasa.gov/News/Techreports/1998/PDF/nas-98-009.pdf

  18. "NAS Parallel Benchmarks Changes". NASA Advanced Supercomputing Division. Retrieved 2009-03-17. https://www.nas.nasa.gov/Resources/Software/npb_changes.html

  19. Feng, H.; van der Wijngaart, F.; Biswas, R.; Mavriplis, C. (July 2004), "Unstructured Adaptive (UA) NAS Parallel Benchmark, Version 1.0" (PDF), NAS Technical Report NAS-04-006, NASA Ames Research Center, Moffett Field, CA https://www.nas.nasa.gov/News/Techreports/2004/PDF/nas-04-006.pdf

  20. Frumkin, M.; Shabanov, L. (September 2004), "Benchmarking Memory Performance with the Data Cube Operator" (PDF), NAS Technical Report NAS-04-013, NASA Ames Research Center, Moffett Field, CA https://www.nas.nasa.gov/News/Techreports/2004/PDF/nas-04-013.pdf

  21. "NAS Parallel Benchmarks Changes". NASA Advanced Supercomputing Division. Retrieved 2009-03-17. https://www.nas.nasa.gov/Resources/Software/npb_changes.html

  22. "NAS Parallel Benchmarks Changes". NASA Advanced Supercomputing Division. Retrieved 2009-02-23. https://www.nas.nasa.gov/Resources/Software/npb.html

  23. van der Wijngaart, R.; Jin, H. (July 2003), "NAS Parallel Benchmarks, Multi-Zone Versions" (PDF), NAS Technical Report NAS-03-010, NASA Ames Research Center, Moffett Field, CA https://www.nas.nasa.gov/News/Techreports/2003/PDF/nas-03-010.pdf

  24. Baily, D.; Barszcz, E.; Barton, J.; Browning, D.; Carter, R.; Dagum, L.; Fatoohi, R.; Fineberg, S.; Frederickson, P.; Weeratunga, S. (March 1994), "The NAS Parallel Benchmarks" (PDF), NAS Technical Report RNR-94-007, NASA Ames Research Center, Moffett Field, CA https://www.nas.nasa.gov/assets/pdf/techreports/1994/rnr-94-007.pdf

  25. Baily, D.; Barszcz, E.; Barton, J.; Browning, D.; Carter, R.; Dagum, L.; Fatoohi, R.; Fineberg, S.; Frederickson, P.; Weeratunga, S. (March 1994), "The NAS Parallel Benchmarks" (PDF), NAS Technical Report RNR-94-007, NASA Ames Research Center, Moffett Field, CA https://www.nas.nasa.gov/assets/pdf/techreports/1994/rnr-94-007.pdf

  26. Baily, D.; Barszcz, E.; Barton, J.; Browning, D.; Carter, R.; Dagum, L.; Fatoohi, R.; Fineberg, S.; Frederickson, P.; Weeratunga, S. (March 1994), "The NAS Parallel Benchmarks" (PDF), NAS Technical Report RNR-94-007, NASA Ames Research Center, Moffett Field, CA https://www.nas.nasa.gov/assets/pdf/techreports/1994/rnr-94-007.pdf

  27. Saphir, W.; van der Wijngaart, R.; Woo, A.; Yarrow, M., New Implementations and Results for the NAS Parallel Benchmarks 2 (PDF), NASA Ames Research Center, Moffett Field, CA https://www.nas.nasa.gov/Resources/Software/npb_2.2.pdf

  28. Wong, P.; van der Wijngaart, R. (January 2003), "NAS Parallel Benchmarks I/O Version 2.4" (PDF), NAS Technical Report NAS-03-002, NASA Ames Research Center, Moffett Field, CA https://www.nas.nasa.gov/News/Techreports/2003/PDF/nas-03-002.pdf

  29. van der Wijngaart, R.; Jin, H. (July 2003), "NAS Parallel Benchmarks, Multi-Zone Versions" (PDF), NAS Technical Report NAS-03-010, NASA Ames Research Center, Moffett Field, CA https://www.nas.nasa.gov/News/Techreports/2003/PDF/nas-03-010.pdf

  30. van der Wijngaart, R. (October 2002), "NAS Parallel Benchmarks Version 2.4" (PDF), NAS Technical Report NAS-02-007, NASA Ames Research Center, Moffett Field, CA https://www.nas.nasa.gov/assets/pdf/techreports/2002/nas-02-007.pdf

  31. van der Wijngaart, R. (October 2002), "NAS Parallel Benchmarks Version 2.4" (PDF), NAS Technical Report NAS-02-007, NASA Ames Research Center, Moffett Field, CA https://www.nas.nasa.gov/assets/pdf/techreports/2002/nas-02-007.pdf

  32. Feng, H.; van der Wijngaart, F.; Biswas, R.; Mavriplis, C. (July 2004), "Unstructured Adaptive (UA) NAS Parallel Benchmark, Version 1.0" (PDF), NAS Technical Report NAS-04-006, NASA Ames Research Center, Moffett Field, CA https://www.nas.nasa.gov/News/Techreports/2004/PDF/nas-04-006.pdf

  33. "NAS Parallel Benchmarks Changes". NASA Advanced Supercomputing Division. Retrieved 2009-03-17. https://www.nas.nasa.gov/Resources/Software/npb_changes.html

  34. Frumkin, M.; Shabanov, L. (September 2004), "Benchmarking Memory Performance with the Data Cube Operator" (PDF), NAS Technical Report NAS-04-013, NASA Ames Research Center, Moffett Field, CA https://www.nas.nasa.gov/News/Techreports/2004/PDF/nas-04-013.pdf

  35. "NAS Parallel Benchmarks Changes". NASA Advanced Supercomputing Division. Retrieved 2009-03-17. https://www.nas.nasa.gov/Resources/Software/npb_changes.html

  36. "NAS Parallel Benchmarks Changes". NASA Advanced Supercomputing Division. Retrieved 2009-03-17. https://www.nas.nasa.gov/Resources/Software/npb_changes.html