Parallel Computing Toolbox™ прибывает предварительно сконфигурированный с кластерным профилем local
для идущего параллельно кода по вашей локальной настольной машине.
Управляйте параллельным поведением с помощью меню Parallel на вкладке MATLAB® Home.
Можно использовать меню Parallel для:
Узнайте другие кластеры, работающие на вашей сети или на Amazon EC2. Нажмите Parallel> Discover Clusters. Для получения дополнительной информации смотрите, Обнаруживают Кластеры.
Создайте и управляйте кластерными профилями с помощью Кластерного менеджера по Профилю. Нажмите Parallel> Create and Manage Clusters. Для получения дополнительной информации смотрите, Создают и Управляют Кластерными Профилями.
Кластерные профили позволяют вам задать определенные свойства для своего кластера, затем применить эти свойства, когда вы создаете кластер, задание и объекты задачи в клиенте MATLAB. Некоторые функции, которые поддерживают использование кластерных профилей,
Управляйте кластерными профилями с помощью Кластерного менеджера по Профилю. Чтобы открыть Кластерного менеджера по Профилю, на вкладке Home, в разделе Environment, выбирают Parallel> Create and Manage Clusters.
Можно использовать Кластерного менеджера по Профилю для:
Узнайте другие кластеры, работающие на вашей сети или на Amazon® AWS®. Для получения дополнительной информации смотрите, Обнаруживают Кластеры.
Создайте кластер в облаке, таком как Amazon AWS. Для получения дополнительной информации смотрите, Создают Кластер Облака.
Добавьте кластерные профили и измените их свойства. Для получения дополнительной информации смотрите, Добавляют и Изменяют Кластерные Профили.
Импортируйте и экспортируйте кластерные профили. Для получения дополнительной информации смотрите Профили Кластера Импорта и Экспорта.
Задайте свойства профиля. Для получения дополнительной информации смотрите Количество Редактирования Рабочих и Кластерных Настроек.
Подтвердите это, кластерный профиль готов к употреблению в MATLAB.
Можно позволить MATLAB обнаружить кластеры для вас. Используйте любой из следующих методов, чтобы обнаружить те кластеры, которые доступны для вас, чтобы использовать:
На вкладке Home в разделе Environment выберите Parallel> Discover Clusters
В Кластерном менеджере по Профилю выберите Discover Clusters
Это открывает диалоговое окно Discover Clusters, где можно искать кластеры MATLAB Parallel Server™:
Если вы выбираете On your network, вы видите новое окно. Выберите эту опцию, если ваши кластеры используют Планировщик Задания MATLAB или сервер HPC Microsoft Windows. Когда кластеры обнаружены, они заполняют список для вашего выбора. Если у вас уже есть профиль для какого-либо из перечисленных кластеров, те имена профиля включены в список. Если вы хотите создать новый профиль для одного из обнаруженных кластеров, выберите имя кластера, вы хотите использовать, и выбрать Next. Последующее диалоговое окно позволяет вам выбрать, если вы хотите установить созданный профиль как свое значение по умолчанию.
Если вы выбираете On Amazon EC2, вы ищете кластеры, работающие на Amazon EC2. Чтобы получить доступ к этим кластерам, необходимо предоставить информацию о входе в систему MathWorks Account.
Кластерное открытие поддерживается только для Планировщиков Задания MATLAB, Сервера Microsoft® Windows® HPC и кластеров Amazon EC2 облака. Если необходимо интегрировать планировщик с MATLAB Parallel Server или создать кластерный профиль для различного поддерживаемого планировщика, смотрите Начало работы с MATLAB Parallel Server (MATLAB Parallel Server). Следующие требования применяются к кластерному открытию:
Планировщик Задания MATLAB — кластеры Планировщика Задания MATLAB поддерживают два различных средних значения открытия:
Многоадресная передача: обнаружить функциональность кластеров использует многоадресную передачу сетевой протокол от клиента, чтобы искать главные узлы, куда Планировщик Задания MATLAB запускается. Это требует, что многоадресная передача, которую сетевой протокол включен и работающий над сетью, которая соединяет узлы верхней части Планировщика Задания MATLAB (куда планировщики запускаются), и клиентские машины. Эта форма открытия может быть ограничена клиентом локальная подсеть, и поэтому не всегда способная обнаружить Планировщик Задания MATLAB в другом месте в вашей сети.
DNS SRV: альтернативный метод открытия должен искать кластеры служебными книжками DNS.
Система доменных имен (DNS) является стандартом для идентификации имен хоста с IP-адресами, или в Интернете или в частной сети. Используя DNS позволяет открытие кластеров Планировщика Задания MATLAB путем идентификации определенных хостов вместо того, чтобы широковещательно передать через сеть.
Сервис DNS (SRV), запись задает местоположение хостов и порты сервисов, такие как связанные с кластерами, которые вы хотите обнаружить. Ваш системный администратор создает DNS записи SRV в инфраструктуре DNS вашей организации. Для описания необходимой записи и информации о валидации, смотрите DNS Запись SRV (MATLAB Parallel Server).
Сервер HPC — обнаружить функциональность кластеров использует Active Directory Domain Services, чтобы обнаружить главные узлы. Узлы верхней части Сервера HPC добавляются к Активной Директории во время установки программного обеспечения HPC Server.
Amazon EC2 — обнаружить функциональность кластеров требует рабочего сетевого подключения между клиентом и веб-сервисами Cloud Center, запускающимися в mathworks.com.
Можно создать кластеры в облачных сервисах, таких как Amazon AWS, непосредственно от Кластерного менеджера по Профилю. В Кластерном менеджере по Профилю выберите Create Cloud Cluster. Зарегистрируйтесь в системе со своей Учетной записью MathWorks® и завершите необходимые шаги. Затем можно создать кластер облака и сконфигурировать параметры, такие как количество машин или количество рабочих на машину. Для получения дополнительной информации о каждом из доступных параметров смотрите, Создают Кластер Облака. Когда вы завершаете все шаги, MATLAB создает новый кластерный профиль для вас. Можно изменить его свойства от Кластерного менеджера по Профилю.
Чтобы управлять вашими лицензиями, тестовая возможность соединения облака, или управлять вашими кластерами облака в MathWorks Cloud Center, переходит к Кластерному менеджеру по Профилю панель инструментов> раздел CLOUD.
С Кластерным менеджером по Профилю можно добавить кластерный профиль для планировщика задания MATLAB или стороннего планировщика. Если необходимо настроить кластер для использования с MATLAB, смотрите Начало работы с MATLAB Parallel Server (MATLAB Parallel Server).
Следующий пример предоставляет инструкции относительно того, как добавить и изменить профили с помощью Кластерного менеджера по Профилю.
Предположим, что вы хотите создать профиль, чтобы установить несколько свойств для заданий запускаться в кластере Планировщика Задания MATLAB. Следующий пример иллюстрирует возможный рабочий процесс, где вы создаете два профиля, дифференцируемые только количеством рабочих, они используют.
В Кластерном менеджере по Профилю выберите Add Cluster Profile> MATLAB Job Scheduler. Это указывает, что вы хотите новый профиль для кластера Планировщика Задания MATLAB.
Это создает и отображает новый профиль, названный MJSProfile1.
Дважды кликните новое имя профиля в листинге и измените имя профиля, чтобы быть MyMJSProfile1
.
Выберите Edit в полосе инструмента так, чтобы можно было установить значения свойств профиля.
В поле Description введите текст MJS with 4 workers
, как показано в следующей фигуре. Введите имя хоста для машины, на которой Планировщик Задания MATLAB запускается, и имя Планировщика Задания MATLAB. Если вы вводите информацию для фактического Планировщика Задания MATLAB, уже работающего на вашей сети, вводите подлинные имена. Если вы не уверены в названиях и местоположении Планировщика Задания MATLAB в своей сети, попросите у своего системного администратора справки.
Если MATLAB, Джоб Шедулер использует установку BASE_PORT
не по умолчанию, как задано в файле mjs_def
, свойстве Host
в кластерном профиле, должен быть добавлен с этим номером BASE_PORT
. Например, MJS-Host:40000
.
Прокрутите вниз к разделу Workers, и для Области значений количества рабочих, введите двухэлементный векторный [4 4]
. Это указывает, что задания с помощью этого профиля требуют по крайней мере четырех рабочих и не больше, чем четырех рабочих. Поэтому задание с помощью этого профиля работает точно на четырех рабочих, даже если это должно ожидать, пока четыре рабочих не доступны перед запуском.
Вы можете хотеть отредактировать другие свойства в зависимости от своей конкретной сетевой и кластерной ситуации.
Выберите Done, чтобы сохранить настройки профиля.
Чтобы создать подобный профиль со всего несколькими различиями, можно копировать существующий профиль и изменить только части, которые необходимо изменить, можно следующим образом:
В Кластерном менеджере по Профилю щелкните правой кнопкой по профилю, называют MyMJSProfile1
в списке и выбирают Duplicate.
Это создает дублирующийся профиль с именем на основе исходного имени профиля, добавленного с _Copy
.
Дважды кликните новое имя профиля и отредактируйте его имя, чтобы быть MyMJSprofile2
.
Выберите Edit, чтобы позволить вам изменять значения свойств профиля.
Отредактируйте поле описания, чтобы изменить его текст на MJS with any workers
.
Прокрутите вниз к разделу Workers, и для Области значений количества рабочих, очистите [4 4]
и покиньте поле пробел.
Выберите Done, чтобы сохранить настройки профиля и закрыть редактор свойств.
У вас теперь есть два профиля, которые отличаются только по количеству рабочих, требуемых для выполнения задания.
При создании задания можно применить любой профиль к тому заданию как способ задать, сколько рабочих это должно работать.
Вы видите, что примеры профилей для различных видов поддерживаемых планировщиков в инструкциях по установке MATLAB Parallel Server в Конфигурируют Ваш Кластер (MATLAB Parallel Server).
Кластерные профили хранятся как часть ваших настроек MATLAB, таким образом, они общедоступны на основе отдельного пользователя. Чтобы сделать кластерный профиль доступным для кого-то еще, можно экспортировать его в отдельный файл .settings
. Таким образом репозиторий профилей может быть создан так, чтобы все пользователи вычислительного кластера могли совместно использовать общие профили.
Экспортировать кластерный профиль:
В Кластерном менеджере по Профилю выберите (подсвечивают) профиль, который вы хотите экспортировать.
Выберите Export> Export. (Также можно щелкнуть правой кнопкой по профилю по листингу и выбрать Export.)
Если вы хотите экспортировать все свои профили в один файл, выберите Export> Export All
В профилях Экспорта, чтобы зарегистрировать диалоговое окно, задайте местоположение и имя для файла. Имя файла по умолчанию совпадает с именем профиля, который это содержит с добавленным расширением .settings
; можно изменить имена, если вы хотите.
Профили, сохраненные таким образом, могут затем быть импортированы другими пользователями MATLAB:
В Кластерном менеджере по Профилю выберите Import.
В профилях Импорта от диалогового окна файла обзор, чтобы найти файл .settings
для профиля вы хотите импортировать. Выберите файл и выберите Open.
Импортированный профиль появляется в вашем Кластерном менеджере по Профилю список. Обратите внимание на то, что список содержит имя профиля, которое является не обязательно именем файла. Если у вас уже есть профиль с тем же именем как то, вы импортируете, импортированный профиль получает расширение, добавленное к его имени, таким образом, можно отличить его.
Можно также экспортировать и импортировать профили программно с функциями parallel.importProfile
и parallel.exportProfile
.
Можно использовать экспортируемый профиль с MATLAB Compiler™ и MATLAB Compiler SDK™, чтобы идентифицировать кластерную информацию о настройке для запуска скомпилированных приложений на кластере. Например, функция setmcruserdata
может использовать экспортируемое имя файла профиля, чтобы установить значение для ключа ParallelProfile
. Для получения дополнительной информации и примеры развертывающихся параллельных приложений, смотрите Передачу Профиль Parallel Computing Toolbox во Время выполнения (MATLAB Compiler) и Использование Parallel Computing Toolbox в Развертываемых приложениях (MATLAB Compiler SDK).
Скомпилированное приложение имеет тот же профиль по умолчанию и тот же список альтернативных профилей, которые имел пользователь компиляции, когда приложение было скомпилировано. Это означает, что во многих случаях файл профиля не нужен, как может иметь место при использовании профиля local
для локальных рабочих. Если экспортируемый файл используется, первый профиль в файле становится значением по умолчанию, когда импортировано. Если какой-либо из импортированных профилей имеет то же имя как какой-либо из существующих профилей, они переименованы во время импорта (хотя их имена в файле остаются неизменными).
После того, как вы создадите кластерный профиль, можно задать количество рабочих и других свойств профиля:
NumWorkers
: количество рабочих, чтобы запустить пул. Фактический размер пула может быть ограничен путем лицензирования, размер кластера и кластерные настройки профиля. Смотрите Размер Пула и Кластерный Выбор
NumThreads
: количество вычислительных потоков, чтобы использовать на каждом рабочем. Можно изменить NumThreads
, так, чтобы рабочие могли запуститься в многопоточном режиме и использовать все ядра на кластере. Это позволяет вам увеличивать число вычислительных потоков NumThreads
на каждом рабочем, не увеличивая число рабочих NumWorkers
. Если вы имеете больше ядер в наличии, увеличиваете NumThreads
, чтобы в полной мере воспользоваться встроенным параллелизмом, обеспеченным многопоточной природой многих базовых библиотек MATLAB. Для получения дополнительной информации смотрите Выполнение MATLAB на многожильных и многопроцессорных машинах.
Не увеличивайте число потоков через всех рабочих на машине, чтобы превысить количество физических ядер. Другими словами, убедитесь что NumWorkers x NumThreads
≤ количество физических ядер на вашей машине. В противном случае вы можете уменьшать производительность.
Чтобы идти параллельно функции языка, такие как parpool
или batch
, на кластере, устанавливают по умолчанию кластерный профиль или объекты кластера использования.
Чтобы установить кластерный профиль как значение по умолчанию, используйте один из следующих путей:
На вкладке Home в разделе Environment выберите Parallel> Select a Default Cluster, и оттуда, все ваши профили доступны. Профиль по умолчанию обозначается. Можно выбрать любой профиль в списке как значение по умолчанию.
Кластерный менеджер по Профилю указывает, который является профилем по умолчанию. Можно выбрать любой профиль в списке, затем выбрать Set as Default.
Можно получить или установить профиль по умолчанию программно при помощи функции parallel.defaultClusterProfile
. Следующие наборы команд достигают того же самого:
parallel.defaultClusterProfile('MyMJSProfile1')
parpool
или
parpool('MyMJSProfile1')
parcluster
)Функция parcluster
создает кластерный объект в вашей рабочей области согласно заданному профилю. Профиль идентифицирует конкретный кластер и применяет значения свойств. Например,
c = parcluster('MyMJSProfile1')
Эта команда находит кластер заданным настройками профиля под названием MyMJSProfile1
и устанавливает значения свойств на кластере, основанном на объектах на настройках в профиле. Используйте кластерный объект в функциях, таких как parpool
или batch
. Путем применения различных профилей можно изменить кластерный выбор, не изменяя код приложения MATLAB.
batch
| createJob
| parallel.defaultClusterProfile
| parallel.exportProfile
| parallel.importProfile
| parcluster
| parpool
| setmcruserdata