Проблемы исследования эффективности суперкомпьютеров. Тест LInpack. Комаров С.А., аспирант 1 г.о. Научные руководители: к.ф.-м.н., доц. Попова Н.Н. чл.-корр. РАН Королев Л.Н.
Измерение производительности Основной единицей измерения производительности является время.
Астрономическое время время ответа (response time) время выполнения(execution time) прошедшее время (elapsed time)
Время ЦП (CPU time) время, потраченное ЦП на выполнение программы пользователя(пользовательское время ЦП) время ЦП, затраченное ОС на выполнение заданий, затребованных программой, и называемое системным временем ЦП.
Другие единицы измерения производительности MIPS - (миллион команд в секунду) MFLOPS – (миллионах элементарных арифметических операций над числами с плавающей точкой, выполненных в секунду).
Существующие тестовые пакеты Dhrystone Тесты Spec Тесты AIM HP Linpack
Тесты SPEC CINT92 - измеряет производительность процессора при обработке целых чисел, CFP92 - измеряет производительность процессора при обработке чисел с плавающей точкой. Результаты на основе эталонной машины VAX 11/780
Тесты AIM Универсальная смесь для рабочих станций (General Workstation Mix) - моделирует работу рабочей станции в среде разработки программного обеспечения. Смесь для механического САПР (Mechanical CAD Mix) моделирует рабочую станцию, используемую для трехмерного моделирования и среды системы автоматизации проектирования в механике. Смесь для геоинформационных систем (GIS Mix) - моделирует рабочую станцию, используемую для обработки изображений и в приложениях геоинформацинных систем. Смесь универсальных деловых приложений (General Business) - моделирует рабочую станцию, используемую для выполнения таких стандартных инструментальных средств, как электронная почта, электронные таблицы, база данных, текстовый процессор и т.д. Многопользовательская смесь (Shared/Multiuser Mix) моделирует многопользовательскую систему, обеспечивающую обслуживание приложений для множества работающих в ней пользователей. Смесь для вычислительного (счетного) сервера (ComputeServer Mix) - моделирует систему, используемую для выполнения заданий с большим объемом вычислений, таких как маршрутизация PCB, гидростатическое моделирование, вычислительная химия, взламывание кодов и т.д. Смесь для файл-сервера (File Server Mix) - моделирует запросы, поступающие в систему, используемую в качестве централизованного файлового сервера, включая ввод/вывод и вычислительные мощности для других услуг по запросу. Смесь СУБД (RBMS Mix) - моделирует систему, выполняющую ответственные приложения управления базой данных.
Исследование проблематики и актуальность Производительность параллельных приложений экспертно оценивается как < 20% от пиковой.
High Performance Linpack 2.0 Тест состоит в решении СЛАУ вида Ax=b методом LU факторизации. Настройка Linpack производится путем изменения 17 параметров запуска в настроечном файле.
Пример настроечного файла пакета High Performance Linpack device out (6=stdout,7=stderr,file) 4 # of problems sizes (N) Ns 4 # of NBs NBs 0 PMAP process mapping (0=Row-,1=Column-major) 3 # of process grids (P x Q) Ps Qs 16.0 threshold 3 # of panel fact PFACTs (0=left, 1=Crout, 2=Right) 2 # of recursive stopping criterium 2 4 NBMINs (>= 1) 1 # of panels in recursion 2 NDIVs 3 # of recursive panel fact RFACTs (0=left, 1=Crout, 2=Right) 1 # of broadcast 0 BCASTs (0=1rg,1=1rM,2=2rg,3=2rM,4=Lng,5=LnM) 1 # of lookahead depth 0 DEPTHs (>=0) 2 SWAP (0=bin-exch,1=long,2=mix) 64 swapping threshold 0 L1 in (0=transposed,1=no-transposed) form 0 U in (0=transposed,1=no-transposed) form 1 Equilibration (0=no,1=yes) 8 memory alignment in double (> 0)
Пример результата выполнения пакета тестирования High Performance Linpack 2.0 ======================================================= T/V N NB P Q Time Gflops W00C2L e ||Ax-b||_oo / ( eps * ||A||_1 * N ) = PASSED ||Ax-b||_oo / ( eps * ||A||_1 * ||x||_1 ) = PASSED ||Ax-b||_oo / ( eps * ||A||_oo * ||x||_oo ) = PASSED
Масштабируемость задач линейной алгебры на BlueGene/P Сильная масштабируемость - зависимость эффективной производительности системы от количества используемых процессоров Размер задачи N=70 000
Масштабируемость задач линейной алгебры на BlueGene/P Слабая масштабируемость – зависимость эффективной производительности системы от количества используемых процессоров и размера задачи. Минимальный размер задачи N=70000 (на 128 процессорах) и далее объем данных растет пропорционально количеству используемых процессоров
Спасибо за внимание