exponenta event banner

createJob

Создать независимое задание в кластере

Синтаксис

job = createJob(cluster)
job = createJob(...,'p1',v1,'p2',v2,...)
job = createJob(...,'Profile','profileName',...)

Аргументы

job

Объект задания.

cluster

Объект кластера, созданный parcluster.

p1, p2

Свойства объекта, настроенные при создании объекта.

v1, v2

Начальные значения для соответствующих свойств объекта.

Описание

job = createJob(cluster) создает независимый объект задания для идентифицированного кластера.

Данные задания хранятся в расположении, указанном кластером JobStorageLocation собственность.

job = createJob(...,'p1',v1,'p2',v2,...) создает объект задания с заданными значениями свойств. Список допустимых свойств созданного объекта см. в разделе parallel.Job страница ссылки на объект. Имя свойства должно быть символьным вектором, а значение должно соответствовать типу этого свойства. В большинстве случаев значения, указанные в этих парах свойство-значение, переопределяют значения в профиле.

При разгрузке вычислений для работников все файлы, необходимые для вычислений на клиенте, также должны быть доступны для работников. По умолчанию клиент пытается автоматически обнаружить и присоединить такие файлы. Чтобы отключить автоматическое обнаружение, установите AutoAttachFiles свойству false. Если автоматическое обнаружение не может найти все файлы или если отправка файлов с клиента на рабочий выполняется медленно, используйте следующие свойства.

  • Если файлы находятся в папке, недоступной для работников, установите AttachedFiles собственность. Кластер копирует каждый указанный файл из клиента в рабочий.

  • Если файлы находятся в папке, доступной для работников, можно установить AdditionalPaths вместо этого свойство. Используйте AdditionalPaths свойство, чтобы добавить пути к пути поиска каждого работника MATLAB ® и избежать ненужного копирования файлов с клиента на работников.

При указании AttachedFiles или AdditionalPathsзначения объединяются со значениями, указанными в соответствующем профиле. Если указано недопустимое имя или значение свойства, объект не будет создан.

job = createJob(...,'Profile','profileName',...) создает независимый объект задания со значениями свойств, указанными в профиле 'profileName'. Если профиль не указан и кластер имеет значение, указанное в его 'Profile' свойство, профиль кластера применяется автоматически. Дополнительные сведения об определении и применении профилей см. в разделах Обнаружение кластеров и Использование профилей кластеров.

Примеры

Пример 2. Создание и запуск базового задания

Создайте независимый объект задания с использованием профиля по умолчанию.

c = parcluster
j = createJob(c);

Добавление задач в задание.

for i = 1:10
    createTask(j,@rand,1,{10});
end

Запустите задание.

submit(j);

Дождитесь завершения выполнения задания и получите его результаты.

wait(j);
out = fetchOutputs(j);

Отображение случайной матрицы, возвращенной третьей задачей.

disp(out{3});

Удалите задание.

delete(j);
Пример 3. Создание задания с вложенными файлами

Создайте независимое задание с присоединенными файлами в дополнение к тем, которые указаны в профиле по умолчанию.

c = parcluster
j = createJob(c,'AttachedFiles',...
        {'myapp/folderA','myapp/folderB','myapp/file1.m'});
Представлен до R2006a