NAS Parallel Benchmarks (NAS Parallel Benchmarks)
NAS Parallel Benchmarks | |
---|---|
Тип | промышленный бенчмарк |
Разработчик | NASA Advanced Supercomputing Division |
Написана на | Фортран, Си |
Первый выпуск | 1991 |
Аппаратная платформа | кросс-платформенная |
Последняя версия | 3.4 |
Сайт | nas.nasa.gov/Software/NP… |
NAS Parallel Benchmarks — набор тестов производительности нацеленных на проверку возможностей высокопараллельных суперкомпьютеров. Они были разработаны в начале 1990-х годов в рамках программы NASA Numerical Aerodynamic Simulation Program[1] и поддерживаются в NASA Advanced Supercomputing (NAS) Division, расположенном в NASA Ames Research Center.
История
[править | править код]Более ранние, чем 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, S.; Barscz, E.; Barton, J.; Browning, D.; Carter, R.; Dagum, L.; Fatoohi, R.; Fineberg, S.; Frederickson, P. (March 1994), "The NAS Parallel Benchmarks" (PDF), NAS Technical Report RNR-94-007, NASA Ames Research Center, Moffett Field, CA.
{{citation}}
: Указан более чем один параметр|first1=
and|first=
(справка); Указан более чем один параметр|last1=
and|last=
(справка)CS1 maint: year (ссылка) - 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, S.; Barscz, E.; Barton, J.; Browning, D.; Carter, R.; Dagum, L.; Fatoohi, R.; Fineberg, S.; Frederickson, P. (March 1994), "The NAS Parallel Benchmarks" (PDF), NAS Technical Report RNR-94-007, NASA Ames Research Center, Moffett Field, CA, Архивировано (PDF) 22 декабря 2016, Дата обращения: 8 января 2015.
{{citation}}
: Указан более чем один параметр|first1=
and|first=
(справка); Указан более чем один параметр|last1=
and|last=
(справка)CS1 maint: year (ссылка) Источник . Дата обращения: 8 января 2015. Архивировано 22 декабря 2016 года. - ↑ 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, Архивировано из оригинала (PDF) 6 февраля 2017, Дата обращения: 4 сентября 2010. Источник . Дата обращения: 4 сентября 2010. Архивировано 6 февраля 2017 года.
- ↑ 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, Архивировано из оригинала (PDF) 27 сентября 2011, Дата обращения: 4 сентября 2010.
{{citation}}
: CS1 maint: year (ссылка) Источник . Дата обращения: 4 сентября 2010. Архивировано из оригинала 27 сентября 2011 года. - ↑ 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, Архивировано из оригинала (PDF) 27 сентября 2011, Дата обращения: 4 сентября 2010.
{{citation}}
: CS1 maint: year (ссылка) Источник . Дата обращения: 4 сентября 2010. Архивировано из оригинала 27 сентября 2011 года. - ↑ 1 2 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, Архивировано из оригинала (PDF) 27 сентября 2011, Дата обращения: 4 сентября 2010.
{{citation}}
: CS1 maint: year (ссылка) Источник . Дата обращения: 4 сентября 2010. Архивировано из оригинала 27 сентября 2011 года. - ↑ 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, Архивировано из оригинала (PDF) 27 сентября 2011, Дата обращения: 4 сентября 2010.
{{citation}}
: CS1 maint: year (ссылка) Источник . Дата обращения: 4 сентября 2010. Архивировано из оригинала 27 сентября 2011 года. - ↑ 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" (PDF), NAS Technical Report NAS-04-013, NASA Ames Research Center, Moffett Field, CA, Архивировано из оригинала (PDF) 27 сентября 2011, Дата обращения: 4 сентября 2010.
{{citation}}
: CS1 maint: year (ссылка) Источник . Дата обращения: 4 сентября 2010. Архивировано из оригинала 27 сентября 2011 года. - ↑ Communication Intensive Grid Benchmark DT (недоступная ссылка) // NASA Ames, 2004.
Ссылки
[править | править код]- NAS Parallel Benchmarks Changes (official website)
- Обзор некоторых пакетов измерения производительности кластерных систем // Ixbt.com, Андрей Сапронов, 22 марта 2004. Раздел «NAS Parallel Benchmarks»