МЕТОДИКА ПАРАЛЛЕЛЬНЫХ ВЫЧИСЛЕНИЙ ДЛЯ ВИРТУАЛЬНЫХ ИСПЫТАНИЙ РАДИОЭЛЕКТРОННЫХ СРЕДСТВ КОСМИЧЕСКИХ АППАРАТОВ

Научная статья
Выпуск: № 11 (18), 2013
Опубликована:
2013/12/08
PDF

Молчанов Е.А.

Студент, Самарский государственный аэрокосмический университет

МЕТОДИКА ПАРАЛЛЕЛЬНЫХ ВЫЧИСЛЕНИЙ ДЛЯ ВИРТУАЛЬНЫХ ИСПЫТАНИЙ РАДИОЭЛЕКТРОННЫХ СРЕДСТВ КОСМИЧЕСКИХ АППАРАТОВ

Аннотация

Статья посвящена разработке концепции построения виртуальной лаборатории для испытаний изделий РКТ с применением систем параллельных вычислений. Описана реализация архитектуры среды виртуального эксперимента на базе серверов HP и использования технологии распределенных вычислений (Cloud-сервисы), баз данных реального времени (TimesTen), хранилища данных (Oracle), а также программ анализа разработки и визуализации (MSSQL Services, Siemens NX, MATHLAB, R-Project, Microsoft Visual Studio и Business Objects).

Ключевые слова: автоматизация, испытания, промышленность.

Molchanov E.A.

Student, Samara State Aerospace University

TECHNIQUE OF PARALLEL CALCULATIONS FOR VIRTUAL TESTS OF RADIO-ELECTRONIC MEANS OF SPACE DEVICES

Abstract

The article deals with the analysis of the concept of a virtual laboratory composition for testing aerospace hardware systems with the use of parallel computing. It describes the implementation of the architecture of virtual experiment environment based on HP servers and the use of distributed computing (Cloud-services), real-time databases (TimesTen), data warehousing (Oracle), as well as the development of programs for the analysis and visualization (MSSQL Services, Siemens NX, MATHLAB , R-Project, Microsoft Visual Studio and Business Objects).

Keywords: automation, test, industry.

Постоянное совершенствование конструкций и бортовой электроники изделий ракетно-космической техники (РКТ) предполагает повышение требований к их наземной лабораторно-стендовой отработке.

В процессе проведения испытаний изделий РКТ, наземная стендовая отработка (НСО) пневмогидросистем питания двигательных установок является одной из ответственных и трудоемких задач, занимающей до 40% затрат НСО. При этом ставятся задачи выполнения требований надежного хранения и многофакторной аналитической обработки большого объема экспериментальных данных, полученных в результате испытаний. Часть аналитической работы по изучению полученных экспериментальных данных может быть выполнена после проведения испытания. Вычислительные ресурсы, необходимые для послесеансной обработки данных могут быть выполнены на имеющихся вычислительных средствах невысокой производительности (менее 0,1 Тфлопс). Однако, при комплексных испытаниях (например, ступеней ракетоносителей) часть испытательных систем должна работать в режиме реального времени, т.е. контролировать правильность функционирования объекта испытаний, а также принимать меры по парированию нештатных ситуаций при неправильном его функционировании [1].

С развитием средств имитационного моделирования часть реальных испытаний (например, автономные испытания отдельных агрегатов изделий) целесообразно заменить проведением численного моделирования. Со временем, доля численного эксперимента в процессе НСО может быть увеличена.

Кроме того, в настоящее время ставится задача сокращения объема НСО за счет доработки изделия по результатам летных испытаний[2]. В этом случае, проведение численного эксперимента (виртуальных испытаний) позволит повысить готовность изделия к летным испытаниям без дополнительных затрат на его транспортировку и испытания в соответствующих подразделениях.

Причем, проведение виртуальных испытаний позволит отработать в большей степени взаимодействие составных частей изделия в сборе, т.к. на этапе проектирования изделия все необходимые расчеты (прочность, гидрогазодинамика, массогабаритные характеристики и др.) должны быть проведены.

Основываясь на необходимости выполнения большого потока вычислений (более 5Тфлопс) и учитывая ограниченную вычислительную мощность единичных вычислительных средств (ПЭВМ, серверов), применение параллельных вычислительных систем значительной мощности является необходимым условием успешного проведения виртуальных испытаний.

В условиях проведения НСО стендовых изделий РКТ, включающих при испытаниях пневмогидросистем питания двигательных установок, десятки и сотни медленно- и быстро- меняющихся параметров с частотой опроса от 10Гц до 100МГц и времени испытаний от единиц до десятков минут, актуальна задача повышения эффективности хранения и обработки большого объема экспериментальных данных и получения информации, труднодоступной при традиционной обработке результатов испытаний ПГСП ДУ, построенной по принципу «первичная обработка» - «хранение» - «послесеансовая обработка».

При испытаниях реальных изделий задачу контроля испытаний (SCADA)  выполняют с использованием программируемых логических контроллеров (ПЛК) на нижнем уровне набора ПЭВМ, объединенных в сеть, на верхнем уровне (рис. 1).

11-05-2021 10-36-32

Рис. 1 - Традиционная схема обработки результатов испытаний

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

Кроме того, проведение большого количества полнонатурных экспериментов, особенно с применением реальных компонентов ракетного топлива и других опасных рабочих тел нежелательно и неэффективно по экономическим и экологическим соображениям.

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

Предельным случаем эффективного применения вычислительной техники является создание виртуальной лаборатории. (рис. 2).

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

Создание виртуальной лаборатории необходимо выполнять поэтапно:

  • Создание вычислительной системы и виртуальной лаборатории, функционирующей, как аналитический центр и хранилище результатов реальных испытаний;
  • Разработка и совершенствование имитационных моделей объектов испытания. Проведение текстовых прогонов виртуальных испытаний параллельно с реальными испытаниями и совершенствование виртуальной лаборатории по результатам их сравнения;
  • Проведение основной массы испытаний в виртуальной лаборатории

m_merged12

Рис. 2 - Схема виртуальной лаборатории

Для нормального функционирования виртуальной лаборатории необходимо решение следующих основных задач:

- создание специальной вычислительной среды – виртуальной испытательной лаборатории;

- разработка имитационных моделей стендового изделий и стендовой оснастки (элементы стапеля, магистрали подачи рабочих тел и др.);

- разработка (создание) сценария проведения испытания – аналога традиционной программы испытаний;

- обеспечение необходимых вычислительных мощностей для одновременного расчета и регистрации параметров виртуального эксперимента;

- визуализация состояния виртуального изделия с необходимой скоростью и степенью детализации.

Наиболее ресурсоемкой из перечисленных задач является проведение расчета виртуального эксперимента. И, если задачи подготовки к испытаниям и проведения вспомогательных операций (выпуск отчета об испытаниях, корректировка виртуальной модели изделия и проч.) могут быть решены с помощью увеличения количества автономных вычислительных средств, то проведение виртуального испытания требует применения технологии параллельных вычислений с выделением нескольких одновременных задач, имеющих различный приоритет на выполнение. Например: расчет наземной системы пневмопитания стендового изделия с одновременным обновлением состояния расходных магистралей пневмогидросистемы питания двигательной установки изделия.

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

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

  1. Многопользовательский доступ (G1=0/05;);
  2. Возможность мониторинга и распределения нагрузки (G2=0,2;);
  3. Обеспечение требуемой вычислительной мощности (G3=0,3;);
  4. Независимость элементов (модулей) (G4=0,05;);
  5. Возможность масштабирования (G5=0,2;);
  6. Централизованное управление (G6=0,1;);
  7. Отказоустойчивость (G7=0,05;);
  8. Минимальная стоимость (G8=0,05;).

Параллельные вычисления могут быть реализованы несколькими способами:

- Параллельное программирование. При этом способе параллельных вычислений одновременное выполнение различных вычислительных задач реализовано в виде параллельно выполняющихся участков машинного кода на одном физическом вычислительном устройстве (процессоре). Ускорение вычислений в этом случае достигается только за счет оптимизации алгоритма программы;

- Физическое распараллеливание. В этом случае, аппаратные средства объединены в параллельно работающую систему, обеспечивающую физическое распределение выполняемых на них вычислений. При этом, программный код не обязательно должен быть оптимизирован для такого вида вычислений;

- Аппаратно-программное распараллеливание. Совместное использование технологии параллельного программирования на физически параллельных вычислительных системах. Данный способ обеспечивает максимальный эффект от применения параллельных технологий и является стандартом де-факто для вычислительных систем большой мощности.

С точки зрения способа обеспечения параллельности, системы параллельных вычислений можно классифицировать [3],как показано на рис. 3.

11-05-2021 10-51-22

Рис. 3 - Классификация систем параллельных вычислений

Многопроцессорные параллельные вычислительные системы входят в группу MIMD (multi instruction multi data)  в соответствии с классификацией М.Флинна.

Однородный доступ к памяти (uniform memory access or UMA) служит основой для построения векторных параллельных процессоров (parallel vector processor or PVP) и симметричных мультипроцессоров (symmetric multiprocessor or SMP). Вычислительным системам этого типа присуща проблема когерентности содержимого разных кэшей (cache coherence problem), что приводит к некоторому снижению скорости вычислений и затрудняет создание систем с достаточно большим количеством процессоров.

Физически распределенная память (non-uniform memory access or NUMA) имеет несколько разновидностей:

  • Системы, в которых для представления данных используется только локальная кэш-память имеющихся процессоров (cache-only memory architecture or COMA);
  • Системы, в которых обеспечивается когерентность локальных кэшей разных процессоров (cache-coherent NUMA or CC-NUMA);
  • Системы, в которых обеспечивается общий доступ к локальной памяти разных процессоров без поддержки на аппаратном уровне когерентности кэша (non-cache coherent NUMA or NCC-NUMA).

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

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

Реализацию облачной (Cloud) архитектуры виртуальной лаборатории возможно осуществить на базе блэйд-серверов HP  и использовании Cloud-технологии распределенных вычислений (Cloud-сервисов) [4]:

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

Существует четыре основных модели развертывания Cloud-систем:

  • Private cloud (частное облако) – инфраструктура, предназначенная для использования одной организацией для своих потребителей (подразделений и отделов компании), или предоставления сервиса клиентам и подрядчикам.
  • Community cloud (общественное облако) – вид инфраструктуры, предназначенный для использования конкретным сообществом потребителей из организаций, имеющих общие задачи.
  • Public cloud (публичное облако) – инфраструктура , предназначенная для свободного использования широкой публикой.
  • Hybrid cloud (гибридное облако) – инфраструктура, являющаяся комбинацией нескольких облачных инфраструктур.

Можно выделить также три основных модели обслуживания:

  • SaaS (Software as a Service) – программное обеспечение как услуга. Модель, в которой пользователь имеет возможность использования программного обеспечения, работающего в облачной структуре и доступного из различных клиентских устройств.
  • PaaS (Platform as a Service) – платформа как услуга. Модель, в которой пользователю предоставляется возможность размещения базового программного обеспечения для последующего размещения на нем новых или существующих приложений, в том числе и разработанных на заказ.
  • IaaS (Infrastructure as a Service) – инфраструктура как услуга. Модель, в которой предоставляется возможность использования облачной инфраструктуры для самостоятельного управления ресурсами обработки, хранения и вычислений, установки и использования произвольного программного обеспечения и даже операционных систем.

Для обеспечения необходимых вычислительных мощностей при одновременном расчете и регистрации параметров виртуального эксперимента необходима балансировка нагрузки (Load Balancing) – распределение процесса выполнения заданий между несколькими серверами сети с целью оптимизации использования ресурсов и сокращения времени вычисления, что так же реализуемо с помощью Cloud-систем.

Согласно рассмотренным моделям развертывания и моделям обслуживания, для реализации среды виртуального проведения эксперимента, наиболее подходящей моделью развертывания является Private Cloud  (либо Community Cloud, в случае объединения с другими предприятиями в ходе разработки), а наиболее подходящей моделью обслуживания – SaaS.

Данным требованиям отвечает open source платформа Openstack, являющаяся одним из лидеров cloud-систем.

Одной из наиболее актуальных задач в процессе проведения испытаний является регистрация результатов в режиме реального времени. Наиболее современным способом реализации данной задачи является использование In-memory DataBase, например, продукта компании Oracle TimesTen – реляционной базы данных, обеспечивающей высочайшую производительность, не реализуемую при использовании обычных баз данных. За счет поддержки технологий ODBC и JDBC интеграция TimesTen для использования в среде параллельных вычислений представляется возможной.  После записи результатов испытаний в TimesTen и их предварительной обработки, данные выгружаются в хранилище для дальнейшего послесеансового анализа.

Ввиду специфики используемого программного обеспечения, необходимы как ОС Linux (для обслуживания БД Oracle, в качестве хранилища, программ математического расчета и др.) так и ОС Windows (для обслуживания БД MSSQL, применяемой для создания OLAP кубов, применяемых для аналитики, средств датамайнинга и визуализации как технической информации (Voyager) так и глобальных процессов (Xcelisious), посредством Business Objects).

Перечень необходимого для функционирования виртуальной лаборатории аппаратного и программного обеспечения представлен в таблице 1.

11-05-2021 10-54-46

Удовлетворить требованиям по производительности может облако из кластеров, объединяющих блэйд-сервера HP восьмого поколения, к примеру, HP Prolliant ИД660с G8 (~0,65Тфлопс каждый), обладающие наилучшими показателями стоимости на условную единицу производительности. Размещение серверов удобнее всего производить в стойке типе NetShelter SX 42U. Количество серверов, обеспечивающее требуемую производительность – 8.

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

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

Концепция виртуализации реальных процессов в настоящее время получила широкое распространение во многом благодаря технологии параллельных вычислений. Создание виртуальной лаборатории на базе серверов HP и использования технологии параллельных вычислений позволит повысить эффективность наземной стендовой отработки изделий РКТ.

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

Список литературы

  • Ю.В. Абросимов, Н.Н. Бахтина, Р.В. Бизяев. Система контроля, диагностики и отображения информации для стендовых испытаний РН «Ангара». // Научно-технические разработки КБ «Салют» 2009-2011гг., М.: Машиностроение, 2012 С. 381-393 c.

  • Ю.О. Бахвалов, Р.В. Бизяев. Структура информационной системы наземно-стендовой отработки РКТ. // Научно-технические разработки КБ «Салют» 2009-2011гг., М.: Машиностроение, 2012 С. 393-410 c.

  • Гергель В.П. Высокопроизводительные вычисления для многоядерных многопроцессорных систем. // Нижний Новгород; Изд-во ННГУ им. Н.И.Лобачевского, 2010.Гергель В.П. Высокопроизводительные вычисления для многоядерных многопроцессорных систем. // Нижний Новгород; Изд-во ННГУ им. Н.И.Лобачевского, 2010.

  • Peter Mell, Timothy Grance. The NIST Definition of Cloud Computing. Recommendations of theNational Institute of Standards and Technology. // NIST, 2011.