Ниже будут кратко описаны некоторые основные средства отладки MPI-программ:
· AIMS -инструментарий, библиотека мониторинга и средства анализа
· MPE -библиотека сохранения Log-файлов средство визуализации Nupshot
· Pablo - библиотека мониторинга и средства анализа
· Paradyn – динамический инструментарий и ран тайм библиотека
· SvPablo – интегрированный инструментарий, библиотека мониторинга, средства анализа
· VAMPIRtrace - библиотека мониторинга and VAMPIR – средство визуализации
AIMS - Automated Instrumentation and Monitoring System
Место разработки:
| Некоммерческий продукт, разрабатывается в NASA Ames Research Center в рамках программы High Performance Computing and Communication Program.
|
Тип
| Тип А (трассировка + визуализация)
|
Языки/Библиотеки
| Fortran 77, HPF, С. Библиотеки передачи сообщений: MPI,PVM,NX.
|
Платформы
| IBM RS/6000 SP, рабочие станции Sun и SGI, Cray T3D/T3E.
|
Функциональность трассировки
| Сбор трасс. Автоматизированное изменение исходного кода программы путем вставки специальных вызовов. Параллельно со сбором трассы создается файл со статической информацией.
Уровни детализации. Подпрограммы, вызовы процедур, процедуры различного типа (процедуры ввода-вывода, MPI процедуры т.п.)
Формат трасс. Формат описан в[7]. Ориентирован на передачу сообщений.
Тип трассировки. События, статистика (может собираться без полной трассы).
|
Визуализация
| Процессы - параллельные линии. События изображаются точками на этих линиях. Особым образом изображаются накладные расходы: времена ожидания, блокировка. Есть возможность "проигрывания" трасс.
Время - реальное (астрономическое)
Связь линий процессов линиями, обозначающими взаимодействия (передача сообщений, глобальные операции).
Диаграммы взаимодействия процессов, временные срезы, история вызовов и трассируемых блоков.
Поддерживается связь с исходным кодом.
|
Статистика
| Суммарное время по замеряемым инструкциям или типам инструкций и количество срабатываний.
|
Рис.3 AIMS. Результат подробного анализа запуска.
Vampir, VampirTrace
URL
| http://www.pallas.de/pages/vampir.htm
|
Где разрабатывается?
| Коммерческий продукт, разработка компании Pallas (Германия).
|
Версии
| VAMPIR 4.0 (X Window), VAMPIRtrace 4.0
|
Тип
| Тип А (трассировка + визуализация). VampirTrace - система генерации трасс (A1), Vampir - система визуализации (A2).
|
Языки/библиотеки
| Языки - Fortran, C; передача сообщений в рамках MPI.
|
Платформы
| · Cray T3D/T3E
· DEC Alpha (OSF/1)
· Fujitsu VP 300/700
· Hitachi SR2201
· HP 9000
· IBM RS/6000, SP
· Intel Paragon
· NEC SX-4
· SGI Origin, PowerChallenge (IRIX 6)
· Sun SPARC
· Intel x86 (Solaris 2.5)
|
Функциональность трассировки.
| Сбор трасс. Линковка с VampirTrace - прослойкой между MPI и пользовательской программой. Уровни детализации. Cлабые вохможности настройки уровня детализации - только по подпрограммам. Возможна установка точек начала/конца трассировки. Тип трассировки. Только события (статистика собирается на этапе анализа трасс).
|
Визуализация
| Процессы - параллельные линии, события - точки на них.
Взаимодействия. Связь линий процессов, матрицы объемов и количества пересылок
Другие объекты. Круговые диаграммы и статистические гистограммы.
Поддерживается связь с исходным кодом.
|
Статистика
| Cуммарное время по замеряемым инструкциям или типам инструкций и количеству срабатываний; отображается на круговых диаграммах и гистограммах.
|
Рис.4. VAMPIR 4.0
Jumpshot
URL
| http://www-unix.mcs.anl.gov/mpi/www/www1/Jumpshot.html
|
Где разрабатывается?
| Некоммерческое средство, разработано в Аргоннской национальной лаборатории. Распространяется вместе с пакетом MPICH.
|
Версия
| Jumpshot 1.0 (требуется Java 1.1 или выше)
|
Тип
| A2 (визуализация трасс)
|
Языки/библиотеки
| Передача сообщений: MPI.
|
Платформа
| Сбор трасс - любые платформы, где работает MPICH. Визуализация - Java.
|
Функциональность трассировки
|
Сбор трасс. Для получения трассы программу необходимо откомпилировать с профилировочной версией библиотеки MPICH. Формат трасс. CLOG. Тип трасс. События
|
Визуализация
| Процессы - параллельные линии, цветом изображается тип функции. Взаимодействия. Связь линий процессов. Другие объекты. Объемы пересылок по времени, гистограммы накладных расходов по времени.
|
Статистика
| Суммарные времена работы различных типов процедур.
|
Разное
| jumpshot входит в состав MPICH начиная с версии 1.1.1 и заменяет собой Tcl/Tk-программы upshot/nupshot, входившие в состав MPICH более ранних версий.
|