mpiprofile

Профилируйте параллельную передачу и времена выполнения

Синтаксис

mpiprofile
mpiprofile on <options>
mpiprofile off
mpiprofile resume
mpiprofile clear
mpiprofile status
mpiprofile reset
mpiprofile info
mpiprofile viewer
mpiprofile('viewer',<profinfoarray>)

Описание

mpiprofile включает или отключает параллельный сбор данных профилировщика на рабочем MATLAB®, запускающем связывающееся задание. mpiprofile агрегировал статистику по коммуникационным временам и времени выполнения. Статистические данные собраны способом, похожим на выполнение profile команда на каждом работнике MATLAB. По умолчанию параллельные профильные расширения включают поля массивов, которые собирают информацию относительно связи с каждым из других рабочих. Эта команда в целом должна быть выполнена в pmode или как часть задачи в связывающемся задании.

mpiprofile on <options> запускает параллельный профилировщик и очищает ранее зарегистрированную статистику профиля.

mpiprofile выбирает следующие варианты.

ОпцияОписание

-detail mmex

-detail builtin

Эта опция задает набор функций, для которых собраны профильные статистические данные. -detail mmex (значение по умолчанию), записывает информацию о функциях, локальных функциях и MEX-функциях. -detail builtin дополнительно информация о записях о встроенных функциях, таких как eig или labReceive.

-messagedetail default

-messagedetail simplified

Эта опция задает деталь, в которой хранится информация о коммуникации.

-messagedetail default собирает информацию относительно экземпляра на лабораторию.

-messagedetail simplified выключает набор для *PerLab поля данных, который уменьшает профилирование наверху. Если у вас есть очень большой кластер, вы можете хотеть использовать эту опцию; однако, вы не получите все подробные коммуникационные графики межлаборатории в средстве просмотра.

Для получения информации о структуре возвращенных данных смотрите mpiprofile info ниже.

-history

-nohistory

-historysize <size>

mpiprofile поддержки эти опции таким же образом как стандартный profile.

Никакой другой profile опции поддерживаются mpiprofile. Эти три опции не оказывают влияния на данные, отображенные mpiprofile viewer.

mpiprofile off останавливает параллельный профилировщик. Чтобы сбросить состояние профилировщика и отключить коммуникационную информацию сбора, необходимо также вызвать mpiprofile reset.

mpiprofile resume перезапускает профилировщик, не очищая ранее зарегистрированную функциональную статистику. Это работает только в pmode или на том же сеансе работника MATLAB.

mpiprofile clear очищает информацию о профиле.

mpiprofile status возвращает допустимое состояние, когда оно работает на рабочем.

mpiprofile reset выключает параллельный профилировщик и сбрасывает сбор данных назад типичному профилировщику. Если вы не вызываете reset, последующие команды профиля соберут информацию MPI.

mpiprofile info возвращает профильную структуру данных с дополнительными полями к тому, обеспеченному стандартным profile info в FunctionTable запись. Все эти поля зарегистрированы на на функцию и на строку основании, за исключением *PerLab поля .

Поле Описание
BytesSentЗаписывает количество отправленных данных
BytesReceivedЗаписывает количество полученных данных
TimeWastedКоммуникационное время ожидания записей
CommTimeЗаписывает коммуникационное время
CommTimePerLabВектор коммуникации получает время для каждой лаборатории
TimeWastedPerLabВектор коммуникационного времени ожидания каждой лаборатории
BytesReceivedPerLabВектор данных получен от каждой лаборатории

Три *PerLab поля собраны только на основе на функцию и могут быть выключены путем ввода следующей команды в pmode:

mpiprofile on -messagedetail simplified

mpiprofile viewer используется в pmode после под управлением пользовательского кода с mpiprofile on. Вызов средства просмотра останавливает профилировщик и открывает графический браузер профиля с параллельными опциями. Выход является отчетом HTML, отображенным в окне профилировщика. Список файлов в нижней части функциональной страницы профиля показывает несколько столбцов слева от каждой строки кода. На итоговой странице:

  • Столбец 1 указывает на количество вызовов той линии.

  • Столбец 2 указывает общее время, проведенное на линии в секундах.

  • Столбцы 3-6 содержат информацию о коммуникации, характерную для параллельного профилировщика

mpiprofile('viewer',<profinfoarray>) в функциональной форме может использоваться от клиента. Структура <profinfoarray> потребности быть переданным в в качестве второго аргумента, который является массивом mpiprofile info структуры. Смотрите pInfoVector в разделе Examples ниже.

mpiprofile не принимает -timer clock опции, потому что коммуникационные часы таймера должны быть действительными.

Для получения дополнительной информации и примеры при использовании параллельного профилировщика, см. Профильный Параллельный Код.

Примеры

В pmode включите параллельный профилировщик, запустите свою функцию параллельно и вызовите средство просмотра:

mpiprofile on;
% call your function;
mpiprofile viewer;

Если вы хотите получить информацию о профилировщике из связывающегося задания за пределами pmode (т.е. в клиенте MATLAB), необходимо возвратить выходные аргументы mpiprofile info при помощи функциональной формы команды. Задайте свой функциональный foo(), и сделайте его функцией задачи в связывающемся задании:

function [pInfo,yourResults] = foo
mpiprofile on
initData = (rand(100, codistributor()) ...
                   * rand(100,codistributor()));
pInfo = mpiprofile('info');
yourResults = gather(initData,1)

После запусков задания и foo() оценен на вашем кластере, получите данные по клиенту:

A = fetchOutputs(yourJob);

Затем просмотрите параллельную информацию о профиле:

pInfoVector = [A{:,1}];
mpiprofile('viewer',pInfoVector);

Смотрите также

| |

Представленный в R2007b

Для просмотра документации необходимо авторизоваться на сайте