logo desc

Эта статья посвящена новым возможностям для взаимодействия с Солвер-Агентом в релизе 3.14.01: мы расскажем о том, что изменилось, и как этим пользоваться. А еще подробно рассмотрим новые алгоритмы с применением нового функционала: как подключаться к Солвер-Агенту, как создавать конфигурации и как запускать решатели.

Перед погружением в эту тему полезно вспомнить, что такое Солвер-Агент. Солвер-Агент – это один из серверных модулей FlowVision, который не имеет графического интерфейса. Он обеспечивает связь между клиентскими приложениями и Солверами. Именно Солвер-Агент отправляет команды на запуск Солверов. Он же посылает Солверам и остальные команды: остановка расчета, сохранение результатов, завершение работы и прочие. Помимо этого, Солвер-Агент следит за списком запущенных Солверов и помогает клиентским приложениям напрямую подключаться к решателям. Это ключевое приложение в нашем программном комплексе, без которого невозможно взаимодействие пользователя с Солвером.

Знакомьтесь с обновленным интерфейсом и функционалом 3.14

Во FlowVision версии 3.14.01 Солвер-Агент и другие модули на локальной машине можно запустить не только старыми методами (через меню «Пуск» или как системную службу), но и непосредственно из Пре-Постпроцессора (ППП). Просто нажмите на экранную кнопку «Модули» в основном меню в левом верхнем углу экрана и выберите нужное приложение для запуска.

Также теперь можно легко проверить статус работы Солвер-Агента: у него появилась иконка в трее операционной системы. Если навести на неё курсор, то появится информация о версии Солвер-Агента и занимаемых им портах.

Эта же иконка поможет быстро закрыть Солвер-Агент через опцию контекстного меню.

Все настройки, связанные с подключением к Солвер-Агенту, теперь находятся в новом меню в правом верхнем углу окна ППП. По умолчанию меню свернуто и отображает только статус подключения к Солвер-Агенту. При отсутствии подключения к Солвер-Агенту индикатор горит красным, в процессе подключения загорается оранжевым, а при успешном подключении меняет цвет на зеленый.

Это меню разворачивается по щелчку мыши. Из выпадающего списка в первой строке можно выбрать нужную конфигурацию подключения, а с помощью кнопки рядом – настроить существующие конфигурации. После успешного подключения станут доступны расширенные настройки. Они позволяют отредактировать информацию о пользователе Солвер-Агента (кнопка ), быстро открыть серверную директорию в проводнике (кнопка ) и задать настройки Солвера по умолчанию, которые будут использоваться для его быстрого запуска (кнопка в соответствующем поле).

Таким образом, в ППП новой версии FlowVision редко используемые кнопки для настройки Солвер-Агента скрыты в отдельном меню, которое в свернутом виде коротко и информативно показывает состояние подключения. А на панели инструментов остались только часто используемые кнопки для управления Солверами.

Создание и настройка конфигурации Солвер-Агента

В начале статьи мы вспомнили о том, что такое Солвер-Агент. А что такое конфигурации подключения к Солвер-Агенту и зачем они нужны? Давайте представим, что у нас есть два расчетных ресурса. Первый – локальный компьютер, за которым мы работаем. Второй – кластер или просто мощная машина для расчетов. Набор разных конфигураций подключения к Солвер-Агенту нужен как раз для того, чтобы быстро переключаться между этими ресурсами.

Как на локальной машине, так и на удаленном сервере запущены Солвер-Агенты. Солвер-Агент по умолчанию запускает решатели на той же машине, где расположен он сам. Исключением являются кластеры – там ситуация сложнее, и её мы в этой статье касаться не будем. Таким образом, чтобы запустить расчет на локальной машине, нужно подключиться к локальному Солвер-Агенту, а для запуска на удаленном сервере – к Солвер-Агенту на сервере. Для каждого из этих случаев нужно указать параметры подключения:

1) IP-адрес или имя машины, на которой запущен Солвер-Агент;

2) Порт, на котором запущен Солвер-Агент на этой машине;

3) Имя пользователя (уже зарегистрированного на выбранном Солвер-Агенте);

4) Пароль этого пользователя.

Набор этих параметров и является конфигурацией подключения. Чтобы не вводить их вручную каждый раз при смене расчетного ресурса, во FlowVision, начиная с версии 3.13, реализовано сохранение созданных конфигураций. Если нужно поменять ресурс – просто выберите нужную конфигурацию из списка.

Но для начала конфигурацию нужно создать. Как уже было сказано выше, это делается помощью кнопки в меню подключения к Солвер-Агенту.

Для начала в левой части окна нужно выбрать строку «Новая конфигурация…», а в правой части окна указать её параметры:

1) Название. Например, «Локальный компьютер», «Кластер», «Удаленный сервер». Оно будет отображаться в списке конфигураций в интерфейсе, чтобы вы могли быстро выбрать нужную.

2) Адрес. Здесь указывается IP или имя компьютера с запущенным Солвер-Агентом, к которому нужно подключиться.

3) Порт. Указывается номер порта, на котором Солвер-Агент ждет подключения от клиентских приложений. Номер по умолчанию задается в виде ABCE0, где ABC – первые три цифры версии FlowVision, а E – пятая цифра версии. Например, для версии 3.14.01 стандартно используется порт 31410.

4) Имя и пароль пользователя, зарегистрированного на Солвер-Агенте. Если вы хотите, чтобы пароль нужно было вводить при каждой авторизации на Солвер-Агенте, не указывайте его в этом окне.

Внизу окна есть галочка «Использовать для автоматического подключения». Её включение означает, что ППП после запуска будет автоматически подключаться к этой конфигурации.

Созданную конфигурацию всегда можно отредактировать, выбрав её из списка в этом окне.

Стоит также отметить, что конфигурации подключения к Солвер-Агенту можно создавать не только в ППП, но и в Терминале FlowVision. При этом Терминал и ППП имеют общий список созданных конфигураций. Конфигурацию, созданную в ППП, вы сможете выбрать в Терминале, и наоборот. 

Создание и настройка пользователей Солвер-Агента

Прежде чем указывать данные пользователя при создании конфигурации Солвер-Агента, его нужно зарегистрировать. Окно регистрации пользователя открывается нажатием кнопки  в окне настройки конфигурации.

Пользователь Солвер-Агента и пользователь операционной системы – это разные понятия, не связанные между собой. Поэтому для пользователя Солвер-Агента можно придумать совершенно любые имя и пароль.  Для удобства и при отсутствии особых требований к безопасности можно задать короткие имя и пароль, даже состоящие из одной цифры или буквы.

В качестве серверной директории (в ней будут храниться проекты с результатами расчетов) можно указывать как локальные папки, так и сетевые. Например, запуская расчеты на компьютере коллеги, можно сохранять результаты в папку на своем компьютере (только не забудьте «расшарить» к ней доступ!) Путь будет выглядеть примерно как \\MYCOMPUTERNAME\SharedDirectory. Если результаты расчетов должны сохраняться на той же удаленной машине, где идет расчет, то нужно указывать путь к директории, существующей на этой машине.

Лицензионное имя и пароль содержатся в txt-файле описания лицензии. Его вместе с самим файлом лицензии высылают сотрудники отдела лицензирования.

После создания пользователя его данные можно редактировать по нажатию кнопки в меню подключения к Солвер-Агенту. Можно поменять пароль, серверную директорию и лицензионную информацию. Имя пользователя редактировать нельзя (но можно создать нового пользователя).

Запускайте Солверы как вам удобно

После того, как пользователь создан, а подключение к Солвер-Агенту установлено, можно приступать к запуску решателей – Солверов. Запустить Солвер можно тремя способами:

1) Быстрый запуск Солвера со стандартными настройками;

2) Запуск Солвера с указанием нужных настроек;

3) Запуск Солвера из командной строки.

Быстрый запуск

Он производится кнопками или . Первая кнопка запускает Солвер со стандартными настройками и подключает к нему ППП. Вторая кнопка делает то же самое, но при этом сразу запускает проект на расчет. Её можно вызвать сочетанием клавиш Ctrl+R. Вы можете поменять это сочетание, а также назначить новые, перейдя в «Горячие клавиши» из меню «Файл» в ППП.

Что за стандартные настройки и как их задать? Под настройками Солвера в данном случае подразумевается его тип и режим распараллеливания. В FlowVision используется два вида распараллеливания. Упрощенно это внутрипроцессорное распараллеливание – по так называемым нитям (threads), и межпроцессорное – с использованием технологии MPI.

Итак, вы можете задать стандартные настройки Солвера, которые будут применяться при запуске в один клик приведенными выше кнопками. Сделать это можно, нажав на кнопку  рядом с полем «Настройки солвера по умолчанию» в развернутом меню настроек подключения к Солвер-Агенту. 

Здесь в поле «Проц.» указывается, какое количество MPI-копий Солвера будет создано, а в поле «Ядра» – сколько нитей будет использовать каждая копия. Тип Солвера выбирается в нижней строке.

Запуск Солверов с указанием нужных настроек

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

Запуск Солверов из командной строки

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

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

Строка запуска выглядит примерно следующим образом:

"C:\Program Files\FlowVision-3.14.01\FvSolver64.exe" sa_user=1 threads=numa sa_ID=1 sa_license=licensename

Разберем указанные для Солвера параметры:

1) sa_user=1 – указание имени зарегистрированного пользователя Солвер-Агента, от лица которого происходит запуск. В данном случае имя: 1.

2) threads=numa – указание количества используемых нитей. Величина numa означает использование количества нитей, равному количеству ядер процессора.

3) sa_ID=1 – указание идентификатора Солвера на Солвер-Агенте. Идентификатор может быть произвольным, но надо помнить, что не должно быть запущено два Солвера с одинаковыми ID.

4) sa_license=licensename – указание лицензионного имени, в данном случае – licensename.

Солвер, запущенный из командной строки, вы так же сможете видеть в окне выбора Солверов в ППП или в Терминале FlowVision.

Также можно запустить Солвер из командной строки с указанием командного файла, что позволит автоматически загрузить проект и запустить его на расчет. Для этого нужно создать командный файл и указать путь до него в дополнительном параметре в строке запуска cmdfile=ПУТЬ_ДО_КОМАНДНОГО_ФАЙЛА. Инструкцию по составлению командного файла можно прочитать в нашей статье «FV Terminal 3.12.02: очередь для автоматического запуска расчётов».

Чтобы запустить Солвер в многопроцессорном режиме, строка должна выглядеть несколько иначе. Во-первых, вначале вызывается не сам Солвер, а исполняемый файл MPI, который создает указанное количество копий Солвера. Во-вторых, в списке параметров для Солвера нужно указать библиотеку для взаимодействия с MPI.

"C:\Program Files\Microsoft MPI\Bin\mpiexec.exe" -n 2 "C:\Program Files\FlowVision-3.14.01\FvSolver64.exe" sa_user=1 threads=numa sa_ID=1 sa_license=fvlic mpi=libFvMPI_MSMPI_v7_x64.dll

В этой строке:

1) -n 2 – сколько копий Солвера должен создать MPI. В данном случае – 2;

2) mpi=libFvMPI_MSMPI_v7_x64.dll – указание библиотеки для запуска решателя с использованием Microsoft MPI.

Спасибо за внимание!

Мы надеемся, что вы быстро освоите обновленный интерфейс FlowVision, а настройка пользователей Солвер-Агента и конфигураций подключения к нему станут для вас проще и удобнее.

Если в процессе ознакомления с новым функционалом у вас возникнут вопросы – пишите нам на почту support@flowvision.ru.

Полезные ссылки

Более детальную информацию по темам, которые затрагивает эта статья вы можете найти в следующих разделах документации FlowVision:

Об авторе

Вадим Петух, инженер

Образование: МГТУ им. Н.Э. Баумана, кафедра Динамика и управление полетом ракет и космических аппаратов. 

Области интересов: суперкомпьютерные вычисления, скрипты для автоматизации процессов, Linux.