Установите продукты для представления анализа Polyspace с рабочих столов на удаленный сервер

Можно выполнить Polyspace® анализ локально вашего рабочего стола или разгружает анализ к одному или нескольким специализированным удаленным серверам. Эта тема показывает, как настроить отправку анализа Polyspace от настольных клиентов к удаленным серверам. После того, как сконфигурированный, можно отправить анализ Polyspace в удаленный сервер и просмотреть загруженные результаты на рабочем столе.

Выберите Between Local и Remote Analysis

Чтобы определить, когда использовать локальный или удаленный анализ, используйте правила, перечисленные в этой таблице.

ВводКогда использовать

Удаленный

Исходные файлы являются большим и временем выполнения анализа, длинно. Как правило, анализ Code Prover берет значительно дольше, чем анализ Bug Finder и извлекает выгоду из работы выделенного сервера.

Локальный

Исходные файлы являются маленьким и временем выполнения анализа, коротко.

Требования для удаленного анализа

Типичная распределенная сеть для выполнения удаленного анализа состоит из этих частей:

  • Клиентские узлы: На клиентском узле вы конфигурируете свой проект Polyspace или скрипты, и затем представляете задание, которое запускает Polyspace.

  • Главный узел: главный узел распределяет представленные задания узлам рабочего.

  • Узел (узлы) рабочего: анализ Polyspace работает на узле рабочего.

В этом рабочем процессе вы устанавливаете продукт MATLAB® Parallel Server™, чтобы справиться с представлениями от нескольких клиентов. Аналитическое задание создается для каждого представления и помещается в очередь. Как только узел рабочего доступен, следующее аналитическое задание от очереди запущено на рабочем.

Эта таблица приводит требования к продукту для удаленного анализа.

Местоположение ТребованияУстановка
Клиентский узел

Polyspace Bug Finder™

Лицензия Polyspace Bug Finder достаточна, чтобы инициировать Bug Finder или анализ Code Prover сервера и рассмотреть загруженные результаты анализа.

Запустите установщика MathWorks на клиентских рабочих столах. Выберите лицензию на десктопные решения Polyspace.

Для подробных инструкций смотрите Установку и Лицензирование.

Главный узел

MATLAB Parallel Server (ранее названный MATLAB Distributed Computing Server)

Запустите установщика MathWorks на сервере (серверах). Выберите лицензию на установку MATLAB Parallel Server.

Для подробных инструкций смотрите Установку и Сконфигурируйте MATLAB Parallel Server для Планировщика Задания MATLAB и Сетевого менеджера лицензий (MATLAB Parallel Server).

Узлы рабочего
  • MATLAB Parallel Server (ранее названный MATLAB Distributed Computing Server)

  • Polyspace Bug Finder Server™

  • Сервер Polyspace Code Prover™ (если вы принимаете решение запустить Code Prover),

Устанавливать:

  • MATLAB Parallel Server, запущенный установщик MathWorks на сервере (серверах). Выберите лицензию на установку MATLAB Parallel Server.

  • Polyspace Bug Finder Server и/или Polyspace Code Prover Server, запущенный установщик MathWorks. Выберите лицензию на серверные продукты Polyspace.

В самой простой удаленной аналитической настройке тот же компьютер может служить главным узлом и узлом рабочего.

Выбор количества рабочих

Чтобы выбрать количество узлов рабочего, чтобы выделить, рассмотрите следующее:

  • Polyspace не распределяет один анализ по нескольким рабочим и выполняет один анализ полностью одного узла рабочего. Не ожидайте, что отдельный анализ убыстрится, если вы будете использовать несколько рабочих (если вы не петляете верификацией файла в Code Prover).

    Только если главные процессы узла больше чем одно аналитическое задание одновременно могут вы извлекать выгоду от нескольких рабочих. Этот сценарий вероятен, если несколько клиентов представляют аналитические задания в кратковременном окне.

  • Каждый узел рабочего должен иметь лицензию в наличии на выполнение анализа Polyspace. В противном случае узел рабочего может ожидать лицензии, которая будет выпущена, и вы не можете извлечь выгоду от нескольких рабочих.

    Убедитесь, что вы не выделяете больше рабочих, чем количество доступных лицензий.

Используя MATLAB Parallel Server для распределительного Polyspace задания отличаются от другого использования MATLAB Parallel Server, где одно задание может быть параллелизировано по нескольким рабочим.

Сконфигурируйте и запустите сервер

На компьютерах, которые действуют как узлы рабочего сервера, вы устанавливаете MATLAB Parallel Server и серверные продукты Polyspace в двух отдельных папках. Установка MATLAB Parallel Server должна знать, где серверные продукты Polyspace расположены так, чтобы она могла направить анализ Polyspace. Чтобы соединить эти две установки, задайте пути к корневой папке серверных продуктов Polyspace в ваших установках MATLAB Parallel Server.

Затем сконфигурируйте и запустите MATLAB Parallel Server (mjs сервис) на всех компьютерах, которые действуют как главный узел и узлы рабочего.

Сконфигурируйте mjs Сервисные настройки

Перед стартовыми сервисами необходимо сконфигурировать mjs сервисные настройки.

  1. Перейдите к matlabroot\toolbox\parallel\bin, где matlabroot папка установки MATLAB Parallel Server, например, C:\Program Files\MATLAB\R2021b.

  2. Измените файл mjs_def.bat Windows®) или mjs_def.sh (Linux®). Чтобы отредактировать и сохранить файл, необходимо открыть редактор в режиме администратора.

    Считайте инструкции в файле и не прокомментируйте линии по мере необходимости. Как минимум вам придется не прокомментировать эти линии:

    • Имя узла:

      REM set HOSTNAME=%strHostname%.%strDomain%
      в Windows или
      #HOSTNAME=`hostname -f`
      в Linux. Явным образом задайте свое имя главного компьютера.

    • Уровень безопасности:

      REM set SECURITY_LEVEL=
      в Windows или
      #SECURITY_LEVEL=""
      в Linux. Явным образом задайте уровень безопасности.

      Если вы выполняете этот шаг позже, убедитесь, что сначала остановили mjs сервисы с:

      mjs stop -clean
      Затем сделайте модификации и более поздний перезапуск сервисами с:
      mjs restart -clean

    В противном случае вы можете видеть ошибку позже при запуске планировщика задания.

Задайте пути к установке Polyspace

Когда вы разгружаете анализ с помощью установки десктопного решения Polyspace, сервер должен запустить анализ с помощью установки серверного продукта Polyspace от того же релиза. Например, если вы разгружаете анализ из десктопного решения R2021b, анализ должен запустить использование серверного продукта R2021b. Чтобы гарантировать, что правильный серверный продукт Polyspace используется, необходимо задать пути к установке серверных продуктов Polyspace в установках MATLAB Parallel Server.

Задавать пути к установке Polyspace:

  1. Перейдите к matlabroot\toolbox\parallel\bin\. Здесь, matlabroot папка установки MATLAB, например, C:\Program Files\MATLAB\R2021b.

  2. Не прокомментируйте и измените следующую линию в файле mjs_polyspace.conf. Чтобы отредактировать и сохранить файл, необходимо открыть редактор в режиме администратора.

    POLYSPACE_SERVER_ROOT=polyspaceserverroot

    Здесь, polyspaceserverroot путь к установке серверных продуктов, например:

    C:\Program Files\Polyspace Server\R2021b

Если вы используете несколько релизов десктопных решений Polyspace и серверных продуктов, релиз MATLAB Parallel Server должен быть более поздним. Например, если вы разгружаете аналитические задания с помощью и R2019a и десктопных решений R2019b Polyspace и серверных продуктов, установка MATLAB Parallel Server должна быть R2019b один. См. также Представляют Аналитические Задания от Нескольких Релизов Polyspace.

Запустите mjs Сервис и присвоение как главный узел узла или рабочего

Чтобы сконфигурировать сервер с несколькими рабочими, запустите сервис, который запускает планировщик задания (mjs сервис) на компьютере, который действует как главный узел и все компьютеры, которые действуют как узлы рабочего. В самой простой настройке тот же компьютер может действовать как главный узел и узел рабочего.

Чтобы настроить кластер с одним главным узлом и несколькими рабочими, на компьютере, который действует как главный узел:

  1. Откройте окно Admin Center. Перейдите к matlabroot\toolbox\parallel\bin\ и выполните файл admincenter.bat (Windows) или admincenter.sh (Linux). Здесь, matlabroot папка установки MATLAB, например, C:\Program Files\MATLAB\R2021b.

  2. В разделе Hosts добавьте имена хоста всех компьютеров, которые вы хотите использовать в качестве головы и узлов рабочего кластера. Запустите mjs сервис.

    Сервис использует настройки, заданные в файле mjs_def.bat (Windows) или mjs_def.sh (Linux).

  3. Щелкните правой кнопкой по каждому хосту. Выберите Start MJS (главный узел) или Start Workers (узлы рабочего).

    Хосты появляются в разделе MATLAB Job Scheduler или Workers. В каждом разделе выберите хост и нажмите Start, чтобы запустить Планировщик Задания MATLAB или рабочих.

При выборе компьютера, когда хост запускает mjs сервис на тот компьютер. У вас должно быть разрешение запустить сервисы на другие компьютеры в сети. Например, на Windows, необходимо быть в Группе администраторов для других компьютеров, где вы хотите запустить mjs сервис. В противном случае необходимо запустить mjs сервисы индивидуально на каждый компьютер, который действует как рабочий.

Для получения дополнительной информации и рабочие процессы командной строки, см.:

Для примера рабочих процессов командной строки, чтобы запустить mjs сервисы, смотрите, Отправляют Анализ Code Prover с Рабочего стола на Локально Размещенный Сервер.

Сконфигурируйте клиент

Сконфигурируйте клиентский узел так, чтобы он мог связаться с компьютером, который служит главным узлом кластера MATLAB Parallel Server. Для планирования заданий можно использовать планировщик задания, который идет с MATLAB Parallel Server (Планировщик Задания MATLAB). Если вы уже использовали сторонний планировщик, такой как Сервер HPC или Профессионал PBS, можно продолжить использовать тот планировщик.

Используйте планировщик задания MATLAB

Сконфигурируйте клиентский узел в пользовательском интерфейсе десктопных решений Polyspace:

  1. Выберите Tools> Preferences.

  2. Кликните по вкладке Server Configuration. Под MATLAB Parallel Server cluster configuration:

    1. В поле Job scheduler host name задайте компьютер для главного узла кластера. Это главные компьютеры планировщик задания MATLAB.

      Если порт, используемый на компьютере, размещающем планировщик задания MATLAB, отличается от 27 350, введите имя порта явным образом с обозначением hostName:portNumber.

    2. Из-за сетевой установки, планировщик задания может не мочь связать назад с вашим локальным компьютером. Если так, введите IP-адрес клиентского компьютера в поле Localhost IP address.

Создайте кластерный профиль для планирования задания

Кластерные профили позволяют вам задать определенные свойства для своего кластера, такие как количество потоков на рабочего, тайм-ауты, коллбэки, и так далее. Для получения дополнительной информации о кластерных профилях смотрите, Обнаруживают Кластеры и Профили Кластера Использования (Parallel Computing Toolbox).

Например, вместо планировщика задания, которому предоставляют MATLAB Parallel Server, можно использовать сторонний планировщик, такой как Сервер HPC или Профессионал PBS. Можно создать кластерный профиль, чтобы использовать сторонний планировщик. Можно также создать кластерный профиль, который использует планировщик задания MATLAB, но со свойствами не по умолчанию. Например, если вы запускаете менеджера по заданию с сертификатом с помощью -certificate отметьте, можно создать кластерный профиль, который использует этого менеджера по заданию.

Создать и использовать кластерный профиль:

  1. В пользовательском интерфейсе Polyspace выберите Tools> Preferences.

  2. В окне Polyspace Preferences нажмите кнопку Settings около Cluster Profile Manager.

  3. В окне Cluster Profile Manager нажмите Add Cluster Profile. Выберите сторонний планировщик. Вы видите, что кластерный профиль по умолчанию использует этот планировщик.

  4. Задайте свойства кластерного профиля.

    1. Нажмите Edit. Измените свойства по умолчанию по мере необходимости.

    2. Нажмите Validate. Как минимум кластерный тест связи и тест задания должны завершиться.

  5. В окне Polyspace Preferences, для Job scheduler host name, задают кластерное имя профиля, которое вы только создали (например, HPCServerProfile1 в примере выше).

Разгрузите анализ Polyspace с рабочего стола на сервер

Если настройка закончена, можно разгрузить анализ с установки десктопного решения Polyspace на удаленный сервер. Можно выполнить одно из следующих действий:

Представьте аналитические задания от нескольких релизов Polyspace

Если вы обновляете до более нового релиза Продуктов polyspace, можно продолжить представлять задания и от более старого и от новых релизов. Например, предположите, что вы использовали релиз R2019a Продуктов polyspace и MATLAB Parallel Server. Когда вы обновляете до релизов R2019b двух наборов продуктов, можно продолжить представлять задания от более старых релизов.

Настройка для обработки нескольких релизов Polyspace, например, R2019a и R2019b, выглядит так:

Чтобы поддержать представления от нескольких релизов с одним кластером MATLAB Parallel Server, необходимо соединить различные установки Продуктов polyspace и MATLAB Parallel Server. Из ссылок, показанных на предыдущем рисунке, ссылки пронумеровали 1, 2 и 5 часть регулярной установки клиента сервера с помощью всех продуктов от того же релиза. Чтобы создать все ссылки, выполните эти шаги:

  1. В установке R2019b десктопных решений Polyspace откройте пользовательский интерфейс и выберите Tools> Preferences. Задайте компьютер, который действует как главный узел кластера MATLAB Parallel Server R2019b, аналогичного описанному ранее.

    Если вы можете представить задания из десктопных решений R2019b Polyspace, вы уже выполнили этот шаг.

  2. В установке R2019b продуктов MATLAB Parallel Server отредактируйте mjs_polyspace.conf файл, чтобы указать на установку R2019b Серверных продуктов Polyspace, аналогичных описанному ранее.

    Если ваша установка R2019b MATLAB Parallel Server может запустить анализ с помощью серверных продуктов R2019b Polyspace, вы уже выполнили этот шаг.

  3. В установке R2019a десктопных решений Polyspace откройте пользовательский интерфейс и выберите Tools> Preferences. Задайте компьютер, который действует как главный узел кластера MATLAB Parallel Server R2019b.

    Если вы устанавливаете версию R2019b MATLAB Parallel Server на том же компьютере как версия R2019a, вы уже выполнили этот шаг. В противном случае этот шаг может быть новым в рабочем процессе мультирелиза.

  4. В установке R2019b продуктов MATLAB Parallel Server отредактируйте файл mjs_def.bat или mjs_def.sh (расположенный в matlabroot\toolbox\parallel\bin\) относиться к более раннему релизу. Найдите линию с MJS_ADDITIONAL_MATLABROOTS и отредактируйте его можно следующим образом. Чтобы отредактировать и сохранить файл, необходимо открыть редактор в режиме администратора.

    set MJS_ADDITIONAL_MATLABROOTS=othermatlabroot

    Здесь, othermatlabroot путь к установке установки MATLAB Parallel Server от более раннего релиза, например:

    C:\Program Files\MATLAB\R2019a

    Этот шаг является новым в рабочем процессе мультирелиза.

  5. В установке R2019a продуктов MATLAB Parallel Server отредактируйте mjs_polyspace.conf файл, чтобы указать на установку R2019a Серверных продуктов Polyspace, аналогичных описанному ранее.

    Если ваша установка R2019a MATLAB Parallel Server может запустить анализ с помощью серверных продуктов R2019a Polyspace, вы уже выполнили этот шаг.

Примечание

  • Самый низкий релиз MATLAB Parallel Server, который может быть смешан с текущим релизом с помощью этого рабочего процесса, является R2016a.

  • Для релизов от R2016a до R2018b, .the настройка серверной стороны отличается от релизов R2019a и позже. Консультируйтесь с документацией для более старых релизов для шага 5 выше. Однако, если вы уже представляете задания от установки pre-R2019a Polyspace с помощью pre-R2019a установки MATLAB Parallel Server, вы, по-видимому, выполнили этот шаг.

Похожие темы