Анализ Polyspace ® можно выполнить локально на рабочем столе или выгрузить на один или несколько выделенных удаленных серверов. В этом разделе показано, как настроить отправку анализа Polyspace с клиентов рабочего стола на удаленные серверы. После настройки можно отправить анализ Polyspace на удаленный сервер и просмотреть загруженные результаты на рабочем столе.

Чтобы определить, когда использовать локальный или удаленный анализ, используйте правила, перечисленные в этой таблице.
| Напечатать | Когда использовать |
|---|---|
Отдаленный | Исходные файлы являются большими, а время выполнения анализа - длительным. Как правило, анализ средства проверки кода занимает значительно больше времени, чем анализ средства поиска ошибок, и имеет преимущества от запуска на выделенном сервере. |
| Местный | Исходные файлы малы, а время выполнения анализа невелико. |
![]()
Типичная распределенная сеть для выполнения удаленного анализа состоит из следующих частей:
Клиентские узлы: на клиентском узле настраивается проект или скрипты Polyspace, а затем отправляется задание, запускающее Polyspace.
Головной узел: головной узел распределяет отправленные задания по рабочим узлам.
Рабочие узлы: анализ Polyspace выполняется на рабочем узле.
В этом рабочем процессе устанавливается продукт MATLAB ® Parallel Server™ для управления отправлениями от нескольких клиентов. Задание анализа создается для каждой отправки и помещается в очередь. Как только рабочий узел доступен, следующее задание анализа из очереди выполняется на работнике.
![]()

![]()
В этой таблице перечислены требования к изделию для удаленного анализа.
| Местоположение | Требования | Установка |
|---|---|---|
| Клиентский узел | Полиспейс Баг Finder™ Лицензии Polyspace Bug Finder достаточно, чтобы запустить анализ Bug Finder или Code Prover на сервере и просмотреть загруженные результаты анализа. | Запустите установщик MathWorks на клиентских рабочих столах. Выберите лицензию для настольных продуктов Polyspace. Подробные инструкции см. в разделе Установка и лицензирование. |
| Головной узел | Параллельный сервер MATLAB (ранее называвшийся сервером распределенных вычислений MATLAB) | Запустите установщик MathWorks на сервере (ах). Выберите лицензию для установки параллельного сервера MATLAB. Подробные инструкции см. в разделе Установка и настройка параллельного сервера MATLAB для планировщика заданий MATLAB и диспетчера сетевых лицензий (параллельный сервер MATLAB). |
| Рабочие узлы |
| Для установки:
|
В простейшей конфигурации удаленного анализа один и тот же компьютер может служить главным узлом и рабочим узлом.
![]()
Чтобы выбрать количество рабочих узлов для назначения, выполните следующие действия.
Polyspace не распределяет один анализ по нескольким работникам и выполняет один анализ полностью на одном рабочем узле. Не ожидайте ускорения отдельного анализа, если вы используете несколько работников (если вы не запускаете файл путем проверки файла в программе Code Prover).
Только если головной узел обрабатывает несколько заданий анализа одновременно, можно воспользоваться преимуществами нескольких работников. Этот сценарий вероятен, если несколько клиентов отправляют задания анализа в течение короткого временного окна.
Каждый рабочий узел должен иметь лицензию, доступную для выполнения анализа Polyspace. В противном случае рабочий узел может ждать освобождения лицензии, и вы не сможете воспользоваться преимуществами нескольких работников.
Убедитесь, что не выделено больше работников, чем доступно лицензий.
Использование MATLAB Parallel Server для распределения заданий Polyspace отличается от других применений MATLAB Parallel Server, где одно задание может быть распараллелено на нескольких рабочих.
![]()
На компьютерах, выполняющих функции рабочих узлов сервера, устанавливается параллельный сервер MATLAB и серверные продукты Polyspace в двух отдельных папках. Установка Parallel Server MATLAB должна знать, где расположены серверные продукты Polyspace, чтобы они могли направлять анализ Polyspace. Чтобы связать две установки, укажите пути к корневой папке серверных продуктов Polyspace в установках параллельного сервера MATLAB.
Затем сконфигурируйте и запустите параллельный сервер MATLAB ( mjs ) на всех компьютерах, выполняющих функции головного узла и рабочих узлов.
![]()
mjs Параметры службыПеред запуском служб необходимо настроить mjs настройки службы.
Перейти к , где matlabroot\toolbox\parallel\bin - папка установки параллельного сервера MATLAB, например, matlabrootC:\Program Files\MATLAB\R2021a.
Изменение файла mjs_def.bat (Windows ®) илиmjs_def.sh (Linux ®). Для редактирования и сохранения файла необходимо открыть редактор в режиме администратора.
Прочитайте инструкции в файле и раскомментируйте строки по мере необходимости. Как минимум, может потребоваться раскомментировать следующие строки:
Имя хоста:
REM set HOSTNAME=%strHostname%.%strDomain%
#HOSTNAME=`hostname -f`
Уровень безопасности:
REM set SECURITY_LEVEL=
#SECURITY_LEVEL=""
В противном случае при запуске планировщика заданий может появиться ошибка.
![]()
При выгрузке анализа с помощью настольной установки продукта Polyspace сервер должен выполнить анализ с помощью установки продукта сервера Polyspace из той же версии. Например, при выгрузке анализа из R2021a настольного продукта анализ должен выполняться с использованием R2021a серверного продукта. Чтобы убедиться, что используется правильный серверный продукт Polyspace, необходимо указать пути установки серверных продуктов Polyspace в установках параллельного сервера MATLAB.
Чтобы указать пути установки Polyspace:
Перейти к . Здесь, matlabroot\toolbox\parallel\bin\ является папкой установки MATLAB, например, matlabrootC:\Program Files\MATLAB\R2021a.
Раскомментируйте и измените следующую строку в файле mjs_polyspace.conf. Для редактирования и сохранения файла необходимо открыть редактор в режиме администратора.
POLYSPACE_SERVER_ROOT=polyspaceserverroot
Здесь, - путь установки серверных продуктов, например:polyspaceserverroot
C:\Program Files\Polyspace Server\R2021a
При использовании нескольких версий настольных и серверных продуктов Polyspace версия MATLAB Parallel Server должна быть более поздней. Например, если Вы разгружаете аналитические рабочие места, используя и R2019a и Поликосмические десктопные решения R2019b и серверные продукты, установка Сервера Параллели MATLAB должна быть R2019b один. См. также раздел Отправка заданий анализа из нескольких выпусков Polyspace.
![]()
mjs Обслуживание и назначение в качестве главного узла или рабочего узлаЧтобы настроить сервер с несколькими работниками, запустите службу, которая запускает планировщик заданий ( mjs ) на компьютере, который действует как головной узел, и на всех компьютерах, которые действуют как рабочие узлы. В простейшей конфигурации один и тот же компьютер может выступать в качестве головного узла и рабочего узла.
Чтобы настроить кластер с одним головным узлом и несколькими работниками, на компьютере, выполняющем функции головного узла:
Откройте окно Центр администрирования. Перейти к и выполните файл matlabroot\toolbox\parallel\bin\admincenter.bat (Windows) или admincenter.sh (Linux). Здесь, является папкой установки MATLAB, например, matlabrootC:\Program Files\MATLAB\R2021a.
![]()

![]()
В разделе «Узлы» добавьте имена узлов всех компьютеров, которые необходимо использовать в качестве главных и рабочих узлов кластера. Запустите mjs обслуживание.
Служба использует параметры, указанные в файле mjs_def.bat (Windows) или mjs_def.sh (Linux).
Щелкните правой кнопкой мыши на каждом хосте. Выберите Start MJS (головной узел) или Start Workers (рабочие узлы).
Хосты отображаются в разделе Планировщик заданий MATLAB или Рабочие. В каждом разделе выберите хост и нажмите кнопку Пуск, чтобы запустить планировщик заданий MATLAB или работников.
Выбор компьютера в качестве хоста запускает mjs на этом компьютере. Необходимо иметь разрешение на запуск служб на других компьютерах в сети. Например, в Windows вы должны быть в группе Администраторы для других компьютеров, на которых вы хотите запустить mjs обслуживание. В противном случае необходимо запустить mjs индивидуально на каждом компьютере, который работает в качестве работника.
Дополнительные сведения и рабочие процессы командной строки см. в следующих разделах:
Установка и настройка параллельного сервера MATLAB для планировщика заданий MATLAB и диспетчера сетевых лицензий (параллельный сервер MATLAB)
mjs(параллельный сервер MATLAB)
![]()
Настройте клиентский узел так, чтобы он мог взаимодействовать с компьютером, который служит главным узлом кластера Parallel Server MATLAB. Для планирования заданий можно использовать планировщик заданий, поставляемый с параллельным сервером MATLAB (планировщик заданий MATLAB). Если вы уже использовали сторонний планировщик, такой как HPC Server или PBS Professional, вы можете продолжать использовать этот планировщик.
![]()
Настройте узел клиента в пользовательском интерфейсе настольных продуктов Polyspace:
Выберите «Сервис» > «Установки».
Перейдите на вкладку Конфигурация сервера. В разделе Конфигурация кластера параллельного сервера MATLAB:
В поле Имя узла планировщика заданий укажите компьютер для главного узла кластера. На этом компьютере размещен планировщик заданий MATLAB.
Если порт, используемый на компьютере, на котором размещен планировщик заданий MATLAB, отличается от порта 27350, введите имя порта явно с обозначением .hostName:portNumber
Из-за сетевого параметра планировщику заданий не удается подключиться к локальному компьютеру. Если да, введите IP-адрес клиентского компьютера в поле Localhost IP address.
![]()

![]()
Профили кластера позволяют определить определенные свойства кластера, такие как количество потоков на работника, тайм-ауты, обратные вызовы и т. д. Дополнительные сведения о профилях кластера см. в разделах Обнаружение кластеров и использование профилей кластера (панель инструментов параллельных вычислений).
Например, вместо планировщика заданий, поставляемого с MATLAB Parallel Server, можно использовать сторонний планировщик, например HPC Server или PBS Professional. Для использования стороннего планировщика можно создать профиль кластера. Можно также создать профиль кластера, который использует планировщик заданий MATLAB, но со свойствами, не используемыми по умолчанию. Например, при запуске менеджера заданий с сертификатом с помощью -certificate , можно создать профиль кластера, использующий этот диспетчер заданий.
Для создания и использования профиля кластера:
В интерфейсе пользователя «Полиспейс» выберите «Сервис» > «Установки».
В окне Настройки полиспейса (Polyspace Preferences) нажмите кнопку Настройки (Settings) рядом с Диспетчером профилей кластера (Cluster Profile Manager).
В окне Диспетчер профилей кластера щелкните Добавить профиль кластера. Выберите сторонний планировщик. С помощью этого планировщика отображается профиль кластера по умолчанию.
![]()

![]()
Укажите свойства профиля кластера.
Нажмите кнопку Изменить. При необходимости измените свойства по умолчанию.
Щелкните Проверить (Validate). Как минимум, должен быть завершен тест подключения кластера и тест задания.
В окне Настройки полиспейса для имени узла планировщика заданий укажите имя только что созданного профиля кластера (например, HPCServerProfile1 в приведенном выше примере).
![]()
После завершения настройки можно выгрузить анализ из настольной установки продукта Polyspace на удаленный сервер. Можно выполнить одно из следующих действий.
Запустите удаленный анализ из пользовательского интерфейса настольных продуктов Polyspace.
См. раздел Отправка анализа Polyspace с рабочего стола на удаленные серверы.
Запустите удаленный анализ с помощью сценариев Windows или Linux.
См. раздел Отправка анализа Polyspace с рабочего стола на удаленные серверы с помощью сценариев. В простейшей конфигурации один и тот же компьютер может использоваться в качестве клиента и сервера. Простое учебное пособие, в котором используется эта конфигурация и в котором рассматриваются все шаги по разгрузке анализа Polyspace, см. в разделе Отправка анализа проверки кода с рабочего стола на локально размещенный сервер.
Запустите удаленный анализ с помощью сценариев MATLAB.
См. раздел Выполнение анализа на сервере.
![]()
При обновлении до более новой версии продуктов Polyspace можно продолжить отправку заданий из более старой и новой версий. Например, предположим, что вы использовали R2019a выпуск продуктов Polyspace и MATLAB Parallel Server. При обновлении до R2019b версий двух наборов продуктов можно продолжить отправку заданий из более старых версий.
Настройка для обработки нескольких выпусков Polyspace, например, R2019a и R2019b, выглядит следующим образом:
![]()

![]()
Для поддержки отправки из нескольких выпусков с одним кластером MATLAB Parallel Server необходимо связать различные установки продуктов Polyspace и MATLAB Parallel Server. Из ссылок, показанных на предыдущем рисунке, ссылки под номерами 1, 2 и 5 являются частью обычной установки сервер-клиент с использованием всех продуктов одного выпуска. Чтобы создать все связи, выполните следующие действия.
При R2019b установке настольных продуктов Polyspace откройте интерфейс пользователя и выберите «Сервис» > «Установки». Определите компьютер, который действует как главный узел группы Сервера Параллели R2019b MATLAB, как описано ранее.
Если вы можете отправлять задания из R2019b настольных продуктов Polyspace, вы уже выполнили этот шаг.
При R2019b установке продуктов MATLAB Parallel Server отредактируйте mjs_polyspace.conf чтобы указать на R2019b установку продуктов Polyspace Server, как описано выше.
Если при R2019b установке MATLAB Parallel Server можно выполнить анализ с использованием R2019b продуктов Polyspace Server, этот шаг уже выполнен.
При R2019a установке настольных продуктов Polyspace откройте интерфейс пользователя и выберите «Сервис» > «Установки». Определите компьютер, который действует как главный узел группы Сервера Параллели R2019b MATLAB.
Если R2019b версия MATLAB Parallel Server установлена на том же компьютере, что и R2019a версия, этот шаг уже выполнен. В противном случае этот шаг может быть новым в многопользовательском рабочем процессе.
При R2019b установке продуктов MATLAB Parallel Server отредактируйте файл mjs_def.bat или mjs_def.sh (расположен в ) см. более раннюю версию. Найти строку с matlabroot\toolbox\parallel\bin\MJS_ADDITIONAL_MATLABROOTS и отредактируйте его следующим образом. Для редактирования и сохранения файла необходимо открыть редактор в режиме администратора.
set MJS_ADDITIONAL_MATLABROOTS=othermatlabroot
Здесь, - путь установки параллельного сервера MATLAB из более ранней версии, например:othermatlabroot
C:\Program Files\MATLAB\R2019a
Этот шаг является новым в потоке операций для нескольких выпусков.
При R2019a установке продуктов MATLAB Parallel Server отредактируйте mjs_polyspace.conf чтобы указать на R2019a установку продуктов Polyspace Server, как описано выше.
Если при R2019a установке MATLAB Parallel Server можно выполнить анализ с использованием R2019a продуктов Polyspace Server, этот шаг уже выполнен.
Примечание
Самая низкая версия MATLAB Parallel Server, которую можно смешать с текущей версией с помощью этого рабочего процесса, - R2016a.
Для версий от R2016a до R2018b,.the конфигурация на стороне сервера отличается от версий R2019a и более поздних. Обратитесь к документации по старым выпускам для шага 5 выше. Однако если вы уже отправляете задания из установки pre-R2019a Polyspace с помощью установки pre-R2019a MATLAB Parallel Server, предположительно, вы выполнили этот шаг.
![]()