Профиль параллельной связи и времен выполнения
mpiprofile
mpiprofile on <options>
mpiprofile off
mpiprofile reset
mpiprofile viewer
mpiprofile resume
mpiprofile clear
mpiprofile status
stats = mpiprofile('info')
mpiprofile('viewer',stats)
mpiprofile
включает или отключает набор данных параллельного профилировщика в MATLAB® рабочий процесс, выполняемый в параллельном пуле. Вы можете использовать mpiprofile
либо от клиента MATLAB, либо непосредственно от работника из spmd
блок. Когда вы бегаете mpiprofile
от клиента MATLAB, mpiprofile
выполняет действие с работниками MATLAB.
mpiprofile
агрегирует статистику по времени выполнения и времени связи. mpiprofile
собирает статистику способом, подобным выполнению profile
команда на каждом Работнике MATLAB. По умолчанию параллельные расширения профилирования включают поля массива, которые собирают информацию о коммуникации с каждым из других работников.
mpiprofile on <options>
запускает параллельный профилировщик и очищает ранее записанную статистику профиля.
mpiprofile
принимает следующие опции.
Опция | Описание |
---|---|
| Эта опция задает подробную информацию, в которой хранится коммуникационная информация.
Обратите внимание, что изменение Для получения информации о структуре возвращенных данных смотрите |
|
Нет другого |
mpiprofile off
останавливает параллельный профилировщик. Чтобы сбросить состояние профилировщика и отключить сбор коммуникационной информации, используйте mpiprofile reset
.
mpiprofile reset
отключает параллельный профилировщик и сбрасывает набор данных обратно в стандартный профилировщик. Если вы не звоните reset
, последующие profile
команды будут собирать информацию MPI.
mpiprofile viewer
останавливает профилировщик и открывает браузер графических профилей с параллельными опциями. Этот выход является HTML отчетом, отображаемым в окне профилировщика. Список файлов в нижней части страницы профиля функции показывает несколько столбцов слева от каждой строки кода. На странице сводки:
В столбце 1 указывается количество вызовов на эту линию.
В столбце 2 указывается общее время, проведенное в линии в секундах.
Столбцы 3-6 содержат информацию связи, относящуюся к параллельному профилировщику.
mpiprofile resume
перезапускает профилировщик без очистки ранее записанной статистики функций.
mpiprofile clear
удаление информации о профиле.
mpiprofile status
возвращает состояние параллельного профилировщика.
stats = mpiprofile('info')
останавливает параллельный профилировщик и возвращает структуру, содержащую статистику профилировщика. stats
содержит те же поля, что и возвращенные profile('info')
, со следующими дополнительными полями в FunctionTable
запись. Все эти поля регистрируются в относительных функциях и относительных базисах, за исключением *PerLab
поля.
Область | Описание |
---|---|
BytesSent | Регистрирует количество отправленных данных |
BytesReceived | Регистрирует количество полученных данных |
TimeWasted | Записи времени ожидания передачи данных |
CommTime | Запись времени связи |
CommTimePerLab | Вектор времени приема сообщений для каждого работника |
TimeWastedPerLab | Вектор времени ожидания связи для каждого работника |
BytesReceivedPerLab | Вектор данных, полученных от каждого работника |
Три *PerLab
поля собраны только для базиса по функциям, и можно отключить их, введя следующую команду:
mpiprofile on -messagedetail simplified
Когда вы запускаете его из клиента MATLAB, stats = mpiprofile('info')
возвращает информацию от всех работников. Когда вы запускаете его на работнике, mpiprofile('info')
возвращает информацию о профиле, относящуюся к этому работнику.
mpiprofile('viewer',stats)
открывает браузер графических профилей, показывающий информацию о профилировании, содержащуюся в stats
. Можно использовать stats = mpiprofile('info')
на клиенте, чтобы создать массив структур.
mpiprofile
не принимает -timer clock
опции, поскольку часы таймера связи должны быть реальными.
Для получения дополнительной информации и примеров использования параллельного профилировщика см. Профилирование параллельного кода.