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