mpiSettings

Сконфигурируйте опции для коммуникации MPI

Синтаксис

mpiSettings('DeadlockDetection','on')
mpiSettings('MessageLogging','on')
mpiSettings('MessageLoggingDestination','CommandWindow')
mpiSettings('MessageLoggingDestination','stdout')
mpiSettings('MessageLoggingDestination','File','filename')

Описание

mpiSettings('DeadlockDetection','on') включает обнаружение мертвой блокировки во время вызовов labSend и labReceive. Если мертвая блокировка обнаруживается, вызов labReceive может вызвать ошибку. Несмотря на то, что не необходимо включить обнаружение мертвой блокировки на всех рабочих, это - самая полезная опция. Значением по умолчанию является 'off' для передачи заданий и 'on' внутри spmd операторы. Если настройки были изменены в spmd оператор, установка остается в действительности, пока параллельный пул не закрывается.

Если вы используете большое количество рабочих, вы можете испытать увеличение эффективности путем отключения обнаружения мертвой блокировки.

Если некоторые рабочие не вызывают labSend или labReceive в течение многих длительных периодов времен обнаружение мертвой блокировки может вызвать ошибки связи. Если вы сталкиваетесь с ошибками, попытайтесь отключить обнаружение мертвой блокировки.

mpiSettings('MessageLogging','on') включает логгирование сообщения MPI. Значением по умолчанию является 'off'. Местом назначения по умолчанию является Командное окно MATLAB®.

mpiSettings('MessageLoggingDestination','CommandWindow') отправляет MPI логгирование информации к командному окну MATLAB. Если задача в связывающемся задании поставится, чтобы получить окно Command Window, MPI, то логгирование информации будет присутствовать в CommandWindowOutput задачи свойство.

mpiSettings('MessageLoggingDestination','stdout') отправляет MPI логгирование информации к стандартному выводу для процесса MATLAB. Если вы используете Планировщик Задания MATLAB, это - mjs сервисный файл журнала.

mpiSettings('MessageLoggingDestination','File','filename') отправляет MPI логгирование информации к заданному файлу.

Примеры

Установите обнаружение мертвой блокировки для связывающегося задания в jobStartup.m файл для того задания:

    % Inside jobStartup.m for the communicating job
    mpiSettings('DeadlockDetection','on');
    myLogFname = sprintf('%s_%d.log',tempname,labindex);
    mpiSettings('MessageLoggingDestination','File',myLogFname);
    mpiSettings('MessageLogging','on');

Выключите обнаружение мертвой блокировки для всех последующих spmd операторы, которые используют тот же параллельный пул:

spmd;mpiSettings('DeadlockDetection','off');end

Советы

Установка MessageLoggingDestination автоматически не включает логгирование сообщения. Отдельный вызов требуется, чтобы включать логгирование сообщения.

mpiSettings должен быть назван на рабочем, не клиенте. Таким образом, это должно быть названо в функции задачи в jobStartup.m, или в taskStartup.m.

Представлено до R2006a