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

обработка информации и управление X

УДК 629.7.05

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

Б. В. Видин,

канд. техн. наук, зам. главного конструктора И. О. Жаринов, канд. техн. наук, главный специалист ФГУП«СПб ОКБ “Электроавтоматика” имени П. А. Ефимова»

О. О. Жаринов, канд. техн. наук, доцент

Санкт-Петербургский государственный университет аэрокосмического приборостроения

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

Ключевые слова — многопроцессорные вычислительные системы, декомпозиция вычислительных задач.

Введение

В настоящее время оборудование на борту летательных аппаратов непрерывно усложняется, в связи с чем встает вопрос оптимального построения вычислительных средств. Традиционно в бортовых комплексах гражданской и военной авиации вычислительные функции выполнялись специализированной бортовой цифровой вычислительной системой (БЦВС), как правило, состоящей из нескольких резервированных вычислителей, осуществляющих параллельные вычисления и выполненных на базе однокристальной микроЭВМ (так называемое ядро вычислительной системы).

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

Как следствие, под БЦВС сегодня следует понимать уже не отдельную, пусть даже и резервированную, бортовую цифровую вычислительную машину (БЦВМ), а более сложный многомашинный комплекс (крейт) средств интегрированной

модульной авионики (ИМА) с периферийными устройствами и средствами индивидуального математического и программного обеспечения.

Однако достаточно эффективно эти крейты функционируют только при реализации относительно малосвязных задач [1]. При решении многосвязных задач и задач, схожих с ними по организации вычислительного процесса, в которых задействуется большое число вычислителей с интенсивным межпроцессорным информационным обменом, использование многомашинных вычислительных комплексов нецелесообразно. Их реальная производительность, как показывают исследования специалистов ОАО «НИЦЭВТ» [2], составляет лишь 5-10 % от потенциальных возможностей.

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

Предлагаемый подход к декомпозиции функциональных задач БЦВС

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

к рассмотрению БЦВС как сложной технической системы в виде [3]:

— модели многомашинной вычислительной системы со связностью на уровне функциональных задач всего комплекса бортового радиоэлек-

тронного оборудования (БРЭО) (межмашинные логические и электрические связи медленного цикла, рис. 1, а);

— модели многопроцессорной вычислительной системы со связностью на уровне конкретной

а)

Ввод данных / ^ і — Обработка і

х^) /

Ввод данных / .. Обработка ^2

— /

...  —

Ввод данных / .  Обработка г Ч

/ * 1

Вывод данных

____т________,

Вывод данных

У

Вывод данных У

I

^ Методы решения декомпозиционных задач (статическое распределение ресурсов) Л

Бортовая цифровая вычислительная машина

/ Ввод данных 7

Хф)

Обработка

Вывод данных

Гф)

Многофункциональный цветной индикатор

/ Ввод данных

Обработка

Вывод данных

Гф)

Блок преобразования сигналов

Ввод данных Х(5Л

Обработка

Вывод данных

б)

Ввод данных / ^ к Обработка '11 і ' ,

Х(йі) /

Ввод данных / Обработка ^2

— /

...

Ввод данных / Обработка і /

х(ы / *

Вывод данных

У

Вывод данных

У

Вывод данных У

Г Методы решения декомпозиционных задач (динамическое распределение ресурсовМ

т

т

МВ

мв

МВ

мв

1.3.

МВ —» мв

МВ —* мв

мв 4 / МВ

мв 4 мв

4*

мв

х\

мв

мв

мв

Рис. 1. Структурная схема статической (а) и динамической (б) декомпозиции функциональных задач в вычислительной системе БРЭО

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

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

Граф, соответствующий результирующему вычислительному алгоритму, образуется следующим образом. Каждому, например £-му, функциональному оператору Ф; алгоритма ставится в соответствие вершина графа V, возле которой записывается ее вес — время выполнения данного функционального оператора в относительных единицах. Вершины Vi и V, соединяются линией со стрелкой (дугой графа), направленной в vi только в том случае, если результат, полученный после выполнения V, является одним из аргументов для Vi. Всякая дуга выражает либо вычислительную зависимость между соответствующими функциональными операторами, либо требования порядка выполнения соединяемых вершин, либо то и другое.

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

Проектирование модели крейта ИМА состоит в выборе числа модулей-вычислителей (МВ) и в определении электрических (логических) связей между ними в соответствии с графом GВС, ограничениями (время, надежность и т. д.) и некоторым функционалом оптимальности. Назовем вершины графа GВС, в которые входят дуги исходных данных, начальными, а вершины, из которых выходят дуги результата решения задач или фрагментов вычисления, — конечными (так, на рис. 2 вершины V!, v5, vg являются начальными, а вершины v6, V,;,, v11 — конечными).

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

Действительно, для независимого подграфа не нужны промежуточные результаты операторов, не входящих в этот подграф, и, следовательно, каждый из них можно реализовать на отдельном вычислителе, обменивающемся информацией по «медленному» интерфейсу. Очевидно, число МВ будет зависеть от числа независимых подграфов.

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

операций обмена и обработки информации

дальнейшее увеличение числа процессоров не уменьшит ір.

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

Если существует множество вершин VІV Vi2, ..., vik, из которых дуги выходят и входят в вершину vi, то это множество принадлежит независимым подграфам, в которые входит вершина vi. В то же время вершина vi будет входить в независимые подграфы, строящиеся на базе вершин, в которые входят дуги, выходящие из вершины Vi.

Определим матрицу размерностью т х т (т — число вершин графа), у которой элемент на пересечении і-й строки и у-го столбца равен 1, если имеется дуга, направленная от і-й вершины к у-й вершине. Если дуга имеет противоположное направление, соответствующий элемент равен -1. При отсутствии такой дуги рассматриваемый элемент определяется как 0.

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

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

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

Рис. 3. Независимые подграфы ОВС1, ОВС2, ОВС3 многосвязного графа ОВС

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

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

Алгоритм прекратит реализацию после того, как все строки, имеющие только отрицательные элементы, будут исчерпаны. Если каждый независимый і-й подграф графа GВС реализуется на отдельном МВ за время їрІ, то ір = тах{ір1, ір2, ..., ^}.

і

Если имеются ограничения вида ^tp.. <tp,

j=l 4

тогда I подграфов, которым принадлежит суммарное время решения, могут быть реализованы

последовательно на одном бортовом вычислителе, при этом общее время 1р решения п задач не увеличится. Конструктивная реализация многомашинной вычислительной системы дает оптимум по критерию минимума числа вычислителей МВ, используемых в составе крейта БЦВС ИМА.

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

Заключение

Концепция ИМА реализуется в аппаратуре БРЭО летательного аппарата через набор доступных к использованию ресурсов (вычислители, память, каналы ввода / вывода), конструктивно объединенных на борту летательного аппарата в стандартный крейт. Ресурсы ИМА представляют собой унифицированные конструктивно функциональные модули открытой архитектуры, имеющие собственные вычислительные средства в унифицированном исполнении.

Расчеты и результаты опытных работ в ФГУП «СПб ОКБ “Электроавтоматика” имени П. А. Ефимова» с использованием рассмотренного метода декомпозиции показывают, что внедрение ИМА-структур на базе унифицированных модулей ИМА с крейтово-модульным конструктивом стойки для решения бортовых задач приводит к экономии материальных средств при реализации аппаратного обеспечения от 19 до 48 % (в зависимости от слож-

ности комплекса и реализованного в нем уровня резервирования) по критерию минимума вычислителей, используемых в аппаратуре БРЭО, с сохранением эквивалентной производительности БЦВС.

Литература

1. Дмитриенко Н. Н., Каляев И. А., Левин И. И., Се-лярников Е. А. Семейство многопроцессорных вычислительных систем с динамически перестраиваемой архитектурой // Вестник компьютерных и информационных технологий. 2009. № 6. С. 35-47.

2. Митрофанов В., Слуцкин А., Ларионов К., Эйсы-монт Л. Направления развития отечественных высокопроизводительных систем // Открытые системы. 2003. № 5. http://www.osp.ru/os/2003/05/ 183021.pdf (дата обращения: 18.09.2009).

3. Копорский Н. С., Видин Б. В., Жаринов И. О. Организация вычислительного процесса в многомашинном

бортовом вычислительном комплексе // Изв. вузов. Приборостроение. 2006. Т. 49. № 6. С. 41-50.