NAS Parallel Benchmarks
NAS Parallel Benchmarks — набір тестів продуктивності націлених на перевірку можливостей високопаралельних суперкомп'ютерів. Вони були розроблені на початку 1990-х в рамках програми NASA Numerical Aerodynamic Simulation Program[1] і підтримуються в NASA Advanced Supercomputing (NAS) Division, розташованому в NASA Ames Research Center.
Історія
ред.Більш ранні, ніж NPB, пакети тестових програм, такі як Livermore loops, LINPACK benchmarks і NAS Kernel Benchmark Program [Архівовано 6 червня 2017 у Wayback Machine.], були орієнтовані на векторні комп'ютери. Багато з них швидко стали неадекватні, в тому числі через обмеження, пов'язані з налаштуванням наведеного паралелізму, і недостатній розмір проблем, які не відповідали паралельним системам. Також погано для них підходили і промислові додатки, що працюють у режимі оцінки продуктивності, через велику вартість їх портування на паралельну систему і неможливості автоматичного їх розпаралелювання на великі системи.
Набір тестів NAS Parallel Benchmarks був розроблений у 1991-1992 роках в NASA Ames[1]. Метою створення пакету тестів стала можливість оцінити продуктивність суперкомп'ютерів за кілька годин. До пакету увійшли обчислювальні ядра, найбільш часто виникали при чисельному моделюванні польоту космічного апарата при рішенні завдань гідро - і аеродинаміки[1].
Спочатку творцями NPB був створений набір правил і рекомендацій для реалізації тестів, що задає допустимі мови програмування, алгоритми, розмірності даних, обмеження на розпаралелювання, організації введення і виводу даних, виміру часу і публікації результатів. У першій випущеної версії, NPB 1, було визначено 8 тестів (EP, MG, CG, FT, LU, SP, BT[2]) і надавалися приклади реалізації на Fortran 77[3].
Пізніше ними була написана публічно доступна програмна реалізація, що отримала версію 2.0 (1995-1996 роки[4]). У версіях 2.3 (1997) і 2.4 (2002) пакет NPB був доповнений варіантом, розпаралеленим з допомогою стандарту MPI.
У версії NPB 3 були додані реалізації з розпаралелювання OpenMP, а також на мовах Java і High Performance Fortran.
Тести
ред.В версії 3.3 пакет NPB 3.3 включає в себе 11 тестів.
Тест | Повна назва | Версія створення | Опис | Зауваження |
---|---|---|---|---|
MG | MultiGrid — множинна сітка | NPB 1[2] | Апроксимація рішення тривимірного дискретного рівняння Пуассона за допомогою V-циклового багатосіточного методу | |
CG | Conjugate Gradient —
пов'язаний градієнт |
Наближення до найменшого своїм значенням великий розрідженій симетричною позитивно певної матриці з використанням inverse iteration разом з методом сполучених градієнтів як підпрограми для вирішення СЛАР | ||
FT | Fast Fourier Transform — швидке перетворення Фур'є | Рішення тривимірного рівняння в приватних похідних за допомогою Швидкого перетворення Фур'є (FFT) | ||
IS | Integer Sort — сортування цілих | Сортування малих цілих чисел за допомогою карманого сортування[5] | ||
EP | Embarrassingly Parallel — | Сортування малих цілих чисел за допомогою Генерація незалежних нормально розподілених випадкових величин за допомогою | ||
BT | Block Tridiagonal | Вирішує синтетичну систему нелінійних диф. рівнянь в приватних похідних (3-вимірної система рівнянь Нав'є-Стокса для стисливої рідини або газу), використовуючи три алгоритму: блочна трехдіагональной схема з методом змінних напрямків (BT), скалярная пятідіагональная схема (SP) і метод симетричною послідовної верхньої релаксації (алгоритм SSOR , завдання LU). | ||
SP | Scalar Pentadiagonal[8] — Скалярний пентадіагональний | |||
LU | Lower-Upper -розкладання за допомогою симетричного методу Гаусса-Зейделя [8] | |||
UA | Unstructured Adaptive[9] — Неструктурований Адаптивний | NPB 3.1[10] |
Рішення рівняння теплопровідності з урахуванням дифузії та конвекції в кубі. Джерело тепла рухливий, сітка нерегулярна і змінюється кожні 5 кроків. |
* Використовується 3D Mortar method |
DC | Data Cube operator — оператор «куб даних»[11] | |||
DT | Data Traffic[10][12] — трафік даних | NPB 3.2[10] | Симуляція обмінів даними між вузлами-джерелами, вузлами-обробниками і вузлами-споживачами | Тільки MPI-версия |
Література
ред.- Weeratunga, S.; Barscz, E.; Barton, J.; Browning, D.; Carter, R.; Dagum, L.; Fatoohi, R.; Fineberg, S. та ін. (March 1994). "The NAS Parallel Benchmarks [Архівовано 22 грудня 2016 у Wayback Machine.] ". NAS Technical Report RNR-94-007. NASA Ames Research Center, Moffett Field, CA
- Bailey, D.; Harris, T.; Saphir, W.; van der Wijngaart, R.; Woo, A.; Yarrow, M. (December 1995), "The NAS Parallel Benchmarks 2.0", NAS Technical Report NAS-95-020, NASA Ames Research Center, Moffett Field, CA
Примітки
ред.- ↑ а б в А.Н. Свистунов. Раздел «Оценка производительности кластерных систем». 2.2. [Архівовано 20 травня 2017 у Wayback Machine.]
- ↑ а б David H Bailey,The NAS Parallel Benchmarks [Архівовано 5 березня 2016 у Wayback Machine.] // David Padua, ed., Encyclopedia of Parallel Computing, Springer, Nov 2009
- ↑ Baily, D.; Barscz, E.; Barton, J.; Browning, D.; Carter, R.; Dagum, L.; Fatoohi, R.; Fineberg, S.; Frederickson, P.; Weeratunga, S. (March 1994), "The NAS Parallel Benchmarks [Архівовано 22 грудня 2016 у Wayback Machine.]", NAS Technical Report RNR-94-007, NASA Ames Research Center, Moffett Field, CA
- ↑ Bailey, D.; Harris, T.; Saphir, W.; van der Wijngaart, R.; Woo, A.; Yarrow, M. (December 1995), "The NAS Parallel Benchmarks 2.0 [Архівовано 27 вересня 2011 у Wayback Machine.]", NAS Technical Report NAS-95-020, NASA Ames Research Center, Moffett Field, CA
- ↑ Saphir, W.; van der Wijngaart, R.; Woo, A. & Yarrow, M., "New Implementations and Results for the NAS Parallel Benchmarks 2" [Архівовано 6 лютого 2017 у Wayback Machine.]
- ↑ Wong, P. & van der Wijngaart, R. (January 2003), "NAS Parallel Benchmarks I/O Version 2.4" [Архівовано 27 вересня 2011 у Wayback Machine.], NAS Technical Report NAS-03-002, NASA Ames Research Center, Moffett Field, CA
- ↑ van der Wijngaart, R. & Jin, H. (July 2003), "NAS Parallel Benchmarks, Multi-Zone Versions" [Архівовано 27 вересня 2011 у Wayback Machine.], NAS Technical Report NAS-03-010, NASA Ames Research Center, Moffett Field, CA
- ↑ а б van der Wijngaart, R. (October 2002), "NAS Parallel Benchmarks Version 2.4" [Архівовано 27 вересня 2011 у Wayback Machine.], NAS Technical Report NAS-02-007, NASA Ames Research Center, Moffett Field, CA
- ↑ Feng, H.; van der Wijngaart, F.; Biswas, R. & Mavriplis, C. (July 2004), "Unstructured Adaptive (UA) NAS Parallel Benchmark, Version 1.0" [Архівовано 27 вересня 2011 у Wayback Machine.], NAS Technical Report NAS-04-006, NASA Ames Research Center, Moffett Field, CA
- ↑ а б в NAS Parallel Benchmarks Changes [Архівовано 2012-02-19 у Wayback Machine.].
- ↑ Frumkin, M. & Shabanov, L. (September 2004), "Benchmarking Memory Performance with the Data Cube Operator" [Архівовано 27 вересня 2011 у Wayback Machine.], NAS Technical Report NAS-04-013, NASA Ames Research Center, Moffett Field, CA
- ↑ Communication Intensive Grid Benchmark DT[недоступне посилання з лютого 2019] // NASA Ames, 2004
Посилання
ред.- NAS Parallel Benchmarks Changes [Архівовано 29 жовтня 2004 у Wayback Machine.] (official website)
- Огляд деяких пакетів вимірювання продуктивності кластерних систем [Архівовано 18 квітня 2012 у Wayback Machine.] // Ixbt.com Андрій Сапронов, 22 березня 2004. Розділ "NAS Parallel Benchmarks"