В некоторых ситуациях может потребоваться определить отдельные задачи задания, возможно, потому, что они могут оценивать различные функции или иметь уникальные структурированные аргументы. Для программирования подобного задания типичный сеанс клиента Parallel Computing Toolbox™ включает в себя шаги, показанные в следующем примере.
В этом примере показаны основные шаги создания и выполнения задания, содержащего несколько простых задач. Каждая задача оценивает sum для входного массива.
Определите кластер. Использовать parallel.defaultClusterProfile чтобы указать, что используется локальный кластер; и использовать parcluster для создания объекта c для представления этого кластера. (Дополнительные сведения см. в разделе Создание объекта кластера.)
parallel.defaultClusterProfile('local');
c = parcluster();Создайте задание. Создать задание j в кластере. (Дополнительные сведения см. в разделе Создание задания.)
j = createJob(c)
Создание трех задач в рамках задания j. Каждая задача оценивает sum массива, переданного в качестве входного аргумента. (Дополнительные сведения см. в разделе Создание задач.)
createTask(j, @sum, 1, {[1 1]});
createTask(j, @sum, 1, {[2 2]});
createTask(j, @sum, 1, {[3 3]});Отправьте задание в очередь для оценки. Затем планировщик распределяет задачи задания среди работников MATLAB ®, доступных для оценки. Теперь локальный кластер может запускать рабочие сеансы MATLAB. (Дополнительные сведения см. в разделе Отправка задания в кластер.)
submit(j);
Дождитесь завершения задания, а затем получите результаты всех задач задания. (Дополнительные сведения см. в разделе Получение результатов задания.)
wait(j)
results = fetchOutputs(j)
results =
[2]
[4]
[6]Удалите задание. После получения результатов можно окончательно удалить задание из склада планировщика.
delete(j)