При выполнении набора нескольких моделирований можно запустить их параллельно на нескольких рабочих MATLAB® в параллельном пуле. Чтобы запустить несколько моделирований, можно использовать parsim
, parsim
с опцией 'RunInBackground'
, включенной, или batchsim
.
Блок-схема показывает, как, запуская несколько моделирований с parsim
, parsim
с RunInBackground
и batchsim
отличается.
parsim
и команды batchsim
используют Параллельные вычисления лицензия Toolbox™, чтобы запустить моделирования параллельно. parsim
запускает моделирования в сериале, если параллельный пул не может быть создан или если лицензия Parallel Computing Toolbox не доступна. batchsim
commans не может запустить ни с чем не сравнимую Вычислительную лицензию Тулбокса.
parsim
Используя команду parsim
с Parallel Computing Toolbox, чтобы запустить несколько моделирований настраивает параллельный пул автоматически и запускает моделирования параллельно. Клиент всегда связывается к работникам MATLAB.
parsim
Создайте массив объектов Simulink.SimulationInput
, in
, чтобы задать изменения в модели.
Задайте одноразовую настройку, требуемую для выполнения нескольких моделирований. Можно использовать SetupFcn
и TransferBaseWorkspaceVariables
, чтобы выполнить настройку на параллельных рабочих.
Запустите parsim(in)
, чтобы выполнить эти несколько моделирований параллельно. Если параллельный пул не существует, parsim
создает его. parsim
использует настройки по умолчанию.
Можно открыть менеджера по Моделированию путем установки аргумента 'SimulationManager'
на 'on'
с parsim
, parsim(in,'SimulationManager','on')
. Менеджер по моделированию позволяет вам контролировать моделирования, когда они запускаются, и предоставляет вам доступ к выходным параметрам моделирований, когда они готовы. Менеджер по моделированию дает, предоставляет вам многочисленную информацию о моделированиях, работающих на рабочих. Для получения дополнительной информации смотрите менеджера по Моделированию.
Если все моделирования завершены, вы получаете массив объектов Simulink.SimulationOutput
.
Ограничения
Закрывание сеанса работы с MATLAB отключает моделирования на рабочих, отключая извлечение частичных результатов.
parsim
с рабочим процессом RunInBackground
Создайте массив объектов Simulink.SimulationInput
, in
, чтобы задать изменения в модели.
Задайте одноразовую настройку, требуемую для выполнения нескольких моделирований. Можно использовать SetupFcn
и TransferBaseWorkspaceVariables
, чтобы выполнить настройку на параллельных рабочих.
Запустите parsim
с набором опции RunInBackground
к 'on'
: parsim(in,'RunInBackground','on')
. Установка опции 'RunInBackground'
к 'on'
запускает моделирования асинхронно. Это сохраняет подсказку команды MATLAB доступным включением вам работать на других задачах.
С набором опции 'RunInBackground'
к 'on'
parsim
возвращает объект Simulink.Simulation.Future
. Можно опросить этот объект проверить состояние моделирований, выбрать выходные параметры моделирований, когда они завершаются или отменяют моделирования. Для получения дополнительной информации смотрите Simulink.Simulation.Future
.
Ограничения
Закрывание сеанса работы с MATLAB отключает моделирования на рабочих, отключая извлечение частичных результатов. Если объект future
убран, вы впоследствии не можете получить доступ к результатам моделирований.
Используя цикл метода fetchNext
на объектах Future
, наряду с менеджером по Моделированию заставляет их, конкурируют за извлечение объектов Future
. Используйте или fetchNext
следующий цикл или менеджера по Моделированию, чтобы получить выходные параметры завершенных моделирований.
batchsim
Пакетный рабочий процесс обычно означает представлять задания, чтобы запустить моделирования на работниках MATLAB и впоследствии получить доступ к результатам тех моделирований. Когда вы запускаете моделирования в пакетах, вы разгружаете выполнение моделирований на вычислить кластер. Чтобы узнать больше о пакетной обработке данных, смотрите Простую Пакетную обработку данных (Parallel Computing Toolbox).
Создайте массив объектов Simulink.SimulationInput
, in
, чтобы задать изменения в модели.
Задайте одноразовую настройку, требуемую для выполнения нескольких моделирований. Можно использовать SetupFcn
и TransferBaseWorkspaceVariables
, чтобы выполнить настройку на параллельных рабочих.
Чтобы работать на кластерном или настольном фоне, вызовите batchsim
, чтобы разгрузить выполнение моделирований. С batchsim
можно использовать большинство аргументов, которые совместимы с командами batch
и parsim
. Для получения дополнительной информации смотрите batchsim
.
Используя batchsim
, вы разгрузили моделирования работнику MATLAB. Чтобы запустить пакетное задание на нескольких рабочих, задайте размер пула, N
, который является целым числом, задающим количество рабочих, чтобы превратить в параллельный пул для задания: batchsim(in, 'Pool', N)
. Должны быть, по крайней мере, рабочие N+1
, доступные на кластере. Если размер пула не задан, batchsim(in)
запускает моделирования на единственном рабочем в кластере, заданном кластерным профилем по умолчанию.
batchsim
, когда используется, не задавая размер пула запускает моделирования в сериале, если лицензия Parallel Computing Toolbox не доступна. Однако ошибки batchsim
, когда используется с размером пула, если лицензия Parallel Computing Toolbox не доступна.
batchsim
разгружает моделирования к вычислить кластеру, позволяя вам выполнить другие задачи, в то время как пакетное задание обрабатывает, или закройте клиент MATLAB и получите доступ к пакетному заданию позже.
При представлении пакетного задания batchsim
возвращает объект задания, содержащий ID задания и другую информацию, которую можно использовать, чтобы получить доступ к пакетному заданию в более позднее время. Доступ к этому заданию снова, чтобы проверить прогресс моделирований.
Поскольку клиентский сеанс не связывается к рабочим, вы не можете получить доступ к выходным параметрам, если задание не закончено.
batchsim
не дает вам способность контролировать моделирования с менеджером по Моделированию. Для пакетных заданий можно использовать монитор пакетного задания, который говорит вам, если задание является очередями, происходящими, или завершенными. Для получения дополнительной информации смотрите Монитор Задания (Parallel Computing Toolbox)