Профилируйте параллельную передачу и времена выполнения
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
опции, потому что коммуникационные часы таймера должны быть действительными.
Для получения дополнительной информации и примеры при использовании параллельного профилировщика, см. Профильный Параллельный Код.