NAS Parallel Benchmarks | |
---|---|
Тип | промышленный бенчмарк |
Разработчик | NASA Advanced Supercomputing Division |
Написана на | Фортран, Си |
Первый выпуск | 1991 |
Аппаратная платформа | кросс-платформенная |
Последняя версия | 3.3.1 |
Сайт | 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-версия |
Данная страница на сайте WikiSort.ru содержит текст со страницы сайта "Википедия".
Если Вы хотите её отредактировать, то можете сделать это на странице редактирования в Википедии.
Если сделанные Вами правки не будут кем-нибудь удалены, то через несколько дней они появятся на сайте WikiSort.ru .