NAS Parallel Benchmarks
NAS Parallel Benchmarks — набор тестов производительности нацеленных на проверку возможностей высокопараллельных суперкомпьютеров. Они были разработаны в начале 1990-х годов в рамках программы NASA Numerical Aerodynamic Simulation Program[1] и поддерживаются в NASA Advanced Supercomputing (NAS) Division, расположенном в NASA Ames Research Center.
NAS Parallel Benchmarks | |
---|---|
Тип | промышленный бенчмарк |
Разработчик | NASA Advanced Supercomputing Division |
Написана на | Фортран, Си |
Первый выпуск | 1991 (1991) |
Аппаратная платформа | кросс-платформенная |
Последняя версия | 3.4 |
Сайт | nas.nasa.gov/Software/NP… |
ИсторияПравить
Более ранние, чем NPB, пакеты тестовых программ, такие как Livermore loops, LINPACK Benchmark и NAS Kernel Benchmark Program, были ориентированны на векторные компьютеры. Многие из них быстро стали неадекватны, в том числе из-за ограничений, связанный с настройкой наведённого параллелизма, и недостаточного размера проблем, которые не соответствовали параллельным системам. Также плохо для них подходили и промышленные приложения, работающие в режиме оценки производительности, из-за большой стоимости портирования их на параллельную систему и невозможности автоматического их распараллеливания на большие системы.
Набор тестов 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 тестов.
Тест | Полное название[5] | Версия появления | Описание[5] | Замечания |
---|---|---|---|---|
MG | MultiGrid — множественная сетка | NPB 1[2][5] | Аппроксимация решения трёхмерного дискретного уравнения Пуассона при помощи V-циклового многосеточного метода | |
CG | Conjugate Gradient — сопряжённый градиент | Приближение к наименьшему собственному значению большой разреженной симметричной положительно-определённой матрицы с использованием inverse iteration вместе с методом сопряжённых градиентов в качестве подпрограммы для решения СЛАУ | ||
FT | Fast Fourier Transform — Быстрое преобразование Фурье | Решение трёхмерного уравнения в частных производных при помощи Быстрого преобразования Фурье (FFT) | ||
IS | Integer Sort — сортировка целых | Сортировка малых целых чисел при помощи карманной сортировки[6] | ||
EP | Embarrassingly Parallel — Чрезвычайно параллельный | Генерация независимых нормально распределённых случайных величин при помощи en:Marsaglia polar method | ||
BT | Block Tridiagonal | Решает синтетическую систему нелинейных диф. уравнений в частных производных (3-мерная система уравнений Навье — Стокса для сжимаемой жидкости или газа), используя три алгоритма: блочная трёхдиагональная схема с методом переменных направлений (BT), скалярная пятидиагональная схема (SP) и метод симметричной последовательной верхней релаксации (алгоритм SSOR, задача LU). | ||
SP | Scalar Pentadiagonal[9] — Скалярный пентадиагональный | |||
LU | Lower-Upper разложение при помощи симметричного метода Гаусса — Зейделя [9] | |||
UA | Unstructured Adaptive[10] — Неструктурированный адаптивный | NPB 3.1[11] | Решение уравнения теплопроводности с учётом диффузии и конвекции в кубе. Источник тепла подвижен, сетка нерегулярна и меняется каждые 5 шагов.[12] | Используется 3D Mortar method |
DC | Data Cube operator — оператор «куб данных»[13] | |||
DT | Data Traffic[11][14] — трафик данных | NPB 3.2[11] | Симуляция обменов данными между узлами-источниками, узлами-обработчиками и узлами-потребителями | Только MPI-версия |
ЛитератураПравить
- Weeratunga, D.; Barscz, E.; Barton, J. & Browning, D. (March 1994), The NAS Parallel Benchmarks, 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.
ПримечанияПравить
- ↑ 1 2 3 А. Н. Свистунов. Раздел «Оценка производительности кластерных систем». 2.2. NAS Parallel Benchmarks (неопр.). Учебный курс «Технологии построения и использования кластерных систем». Нижегородский государственный университет им. Н. И. Лобачевского (2007). Дата обращения: 8 января 2015. Архивировано 20 мая 2017 года.
- ↑ 1 2 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 года., NAS Technical Report NAS-95-020, NASA Ames Research Center, Moffett Field, CA.
- ↑ 1 2 3 Weeratunga, D.; Barscz, E.; Barton, J. & Browning, D. (March 1994), The NAS Parallel Benchmarks, NAS Technical Report RNR-94-007, NASA Ames Research Center, Moffett Field, CA Архивная копия от 22 декабря 2016 на Wayback Machine
- ↑ 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, NAS Technical Report NAS-03-002, NASA Ames Research Center, Moffett Field, CA Архивная копия от 27 сентября 2011 на Wayback Machine
- ↑ van der Wijngaart, R. & Jin, H. (July 2003), NAS Parallel Benchmarks, Multi-Zone Versions, NAS Technical Report NAS-03-010, NASA Ames Research Center, Moffett Field, CA Архивная копия от 27 сентября 2011 на Wayback Machine
- ↑ 1 2 van der Wijngaart, R. (October 2002), NAS Parallel Benchmarks Version 2.4, NAS Technical Report NAS-02-007, NASA Ames Research Center, Moffett Field, CA Архивная копия от 27 сентября 2011 на Wayback Machine
- ↑ Feng, H.; van der Wijngaart, F.; Biswas, R. & Mavriplis, C. (July 2004), Unstructured Adaptive (UA) NAS Parallel Benchmark, Version 1.0, NAS Technical Report NAS-04-006, NASA Ames Research Center, Moffett Field, CA Архивная копия от 27 сентября 2011 на Wayback Machine
- ↑ 1 2 3 NAS Parallel Benchmarks Changes (неопр.) (недоступная ссылка — история). NASA Advanced Supercomputing Division. Дата обращения: 17 марта 2009. Архивировано 3 мая 2012 года.
- ↑ http://www.exascale.ru/shmem.pdf (недоступная ссылка); Альтернативные модели программирования Высокоскоростных коммуникационных сетей Архивная копия от 4 марта 2016 на Wayback Machine, Корж А. А., НИЦЭВТ, с. 31.
- ↑ Frumkin, M. & Shabanov, L. (September 2004), Benchmarking Memory Performance with the Data Cube Operator, NAS Technical Report NAS-04-013, NASA Ames Research Center, Moffett Field, CA Архивная копия от 27 сентября 2011 на Wayback Machine
- ↑ Communication Intensive Grid Benchmark DT (недоступная ссылка) // NASA Ames, 2004.
СсылкиПравить
- NAS Parallel Benchmarks Changes (official website)
- Обзор некоторых пакетов измерения производительности кластерных систем // Ixbt.com, Андрей Сапронов, 22 марта 2004. Раздел «NAS Parallel Benchmarks»