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