Эта статья посвящена новым возможностям для взаимодействия с Солвер-Агентом в релизе 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:
- Модули FlowVision > Солвер и Солвер-Агент;
- Установка, настройка, администрирование > Администрирование > Работа с Солвер-Агентом;
- Работа с Пре-Постпроцессором > Действия в Пре-Постпроцессоре > Управление расчетом проекта > Операции с Солвером и Солвер-Агентом.
Об авторе
Вадим Петух, инженер
Образование: МГТУ им. Н.Э. Баумана, кафедра Динамика и управление полетом ракет и космических аппаратов.
Области интересов: суперкомпьютерные вычисления, скрипты для автоматизации процессов, Linux.