Архив документации OpenNet.ru /
Раздел "Программирование, языки" /
Индекс
Next: Написание определения обрамления
Up: Руководство пользователя mpich, переносимой
Previous: HP-UX
Contents
Генератор профилирующих обрамлений (wrappergen) создан для дополнения
профилирующего интерфейса MPI. Он позволяет пользователю создавать любое
количество мета-обрамлений, котороые могут применяться к любому количеству
функций MPI. Обрамления могут находиться в отдельных файлах, и могут корректно
вкладываться друг в друга, так что в отдельной функции может существовать более
одного уровня профилирования.
wrappergen использует три источника ввода:
- Список функций, для которых генерируются обрамления.
- Описания профилируемых функций. Для достижения скорости и простоты
разбора используется специальный формат. См. файл `proto'. Функции MPI-1
находятся в `mpi_proto'. Функции ввода-вывода из MPI-2 находятся в
`mpiio_proto'.
- Определение обрамления.
Список функций представляет собой просто файл имен функций, разделенных
пробелами. Если он опущен, любые макросы forallfn или fnall будут
расширены на каждую функцию в файле определений.
Если описания функций отсутствуют, используются те, которые находятся в
`mpi_proto' (это множество с определением PROTO_FILE в
`Makefile').
Опции wrappergen:
- -w file
- Добавить файл для использования в списке файлов
обрамлений.
- -f file
- Файл содержит список имен функций для профилирования,
разделенный пробелами.
- -p file
- Файл содержит определения прототипов специальных функций.
- -o file
- Направить вывод в файл.
Например, для оценки времени каждой операции ввода-вывода, используйте
cd mpe/profiling/lib
../wrappergen/wrappergen -p ../wrappergen/mpiio_proto
-w time_wrappers.w > time_io.c
Результирующий код требует только версию MPI_Finalize для вывода
временных величин. Она может быть написана либо добавлением MPI_Finalize
и MPI_Init к `mpiio_proto', либо через простое редактирование
версии, полученной при использовании `mpi_proto' вместо
`mpiio_proto'.
Subsections
Alex Otwagin
2002-12-16
Архив документации на OpenNet.ru