NAS Parallel Benchmarks — набор тестов производительности нацеленных на проверку возможностей высокопараллельных суперкомпьютеров. Они были разработаны в начале 1990-х годов в рамках программы NASA Numerical Aerodynamic Simulation Program и поддерживаются в 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. Целью создания пакета тестов стала возможность оценить производительность суперкомпьютеров за несколько часов. В пакет вошли вычислительные ядра, наиболее часто возникавшие при численном моделировании полёта космического аппарата при решении задач гидро- и аэродинамики.

Изначально создателями NPB был создан набор правил и рекомендаций для реализации тестов, задающая допустимые языки программирования, алгоритмы, размерности данных, ограничения на распараллеливание, организации ввода и вывода данных, замера времени и публикации результатов. В первой выпущенной версии, NPB 1, было определено 8 тестов (EP, MG, CG, FT, LU, SP, BTDavid H Bailey, The NAS Parallel Benchmarks // David Padua, ed., Encyclopedia of Parallel Computing, Springer, Nov 2009.) и предоставлялись примеры реализации на Fortran 77Baily, 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 ", NAS Technical Report RNR-94-007, NASA Ames Research Center, Moffett Field, CA..

Затем ими была написана публично доступная программная реализация, получившая версию 2.0 (1995—1996 годы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.3 (1997) и 2.4 (2002) пакет NPB был дополнен вариантом, распараллеленным с помощью стандарта MPI.

В версии NPB 3 были добавлены реализации с распараллеливанием OpenMP, а также на языках Java и High Performance Fortran.

Тесты В версии 3.3 пакет NPB 3.3 включает в себя 11 тестов.

Тест Полное название Версия появления Описание Замечания MG MultiGrid — множественная сетка NPB 1 Аппроксимация решения трёхмерного дискретного уравнения Пуассона при помощи V-циклового многосеточного метода CG Conjugate Gradient — сопряжённый градиент Приближение к наименьшему собственному значению большой разреженной симметричной положительно-определённой матрицы с использованием inverse iteration вместе с методом сопряжённых градиентов в качестве подпрограммы для решения СЛАУ FT Fast Fourier Transform — Быстрое преобразование Фурье Решение трёхмерного уравнения в частных производных при помощи Быстрого преобразования Фурье (FFT) IS Integer Sort — сортировка целых Сортировка малых целых чисел при помощи карманной сортировки EP Embarrassingly Parallel — Чрезвычайно параллельный Генерация независимых нормально распределённых случайных величин при помощи :en:Marsaglia polar method BT Block Tridiagonal Решает синтетическую систему нелинейных диф. уравнений в частных производных (3-мерная система уравнений Навье — Стокса для сжимаемой жидкости или газа), используя три алгоритма: блочная трёхдиагональная схема с методом переменных направлений (BT), скалярная пятидиагональная схема (SP) и метод симметричной последовательной верхней релаксации (алгоритм SSOR, задача LU). У теста BT есть подтип с большой интенсивностью ввода-вывода Все три версии теста имеют мультизонные варианты SP Scalar Pentadiagonal  — Скалярный пентадиагональный LU Lower-Upper разложение при помощи симметричного метода Гаусса — Зейделя UA Unstructured Adaptive  — Неструктурированный адаптивный NPB 3.1 Решение уравнения теплопроводности с учётом диффузии и конвекции в кубе. Источник тепла подвижен, сетка нерегулярна и меняется каждые 5 шагов.http://www.exascale.ru/shmem.pdf; Альтернативные модели программирования Высокоскоростных коммуникационных сетей , Корж А. А., НИЦЭВТ, с. 31. Используется 3D Mortar method DC Data Cube operator — оператор «куб данных» DT Data TrafficCommunication Intensive Grid Benchmark DT // NASA Ames, 2004. — трафик данных NPB 3.2  Симуляция обменов данными между узлами-источниками, узлами-обработчиками и узлами-потребителями Только MPI-версия

Литература

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.

Примечания

Ссылки NAS Parallel Benchmarks Changes (official website) Обзор некоторых пакетов измерения производительности кластерных систем // Ixbt.com, Андрей Сапронов, 22 марта 2004. Раздел «NAS Parallel Benchmarks»

Категория:Программы тестирования производительности