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

ВЫЧИСЛИТЕЛЬНАЯ ТЕХНИКА

УДК 681.3

В. А. Богатырев, И. Ю. Голубев, В. Ф. Беззубов

ОРГАНИЗАЦИЯ МЕЖМАШИННОГО ОБМЕНА В ДУБЛИРОВАННЫХ ВЫЧИСЛИТЕЛЬНЫХ КОМПЛЕКСАХ

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

Ключевые слова: дублированный вычислительный комплекс, отказоустойчивость, надежность, межмашинный обмен.

Введение. Высокая надежность и отказоустойчивость [1, 2] управляющих компьютерных систем достигается при их построении на основе дублированных (двухмашинных) вычислительных комплексов (ДВК), зачастую объединяемых в кластеры [3—5].

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

Эффективность дублированных комплексов и кластеров на их основе во многом определяется организацией межмашинного обмена [6, 7], что обусловливает важность анализа при проектировании ДВК результативности использования известных вариантов организации межмашинного обмена и возможностей их модификации с учетом особенностей построения систем.

Проанализируем потенциальные возможности повышения эффективности дублированных комплексов в результате организации межмашинного обмена с двойным прямым доступом к памяти (ПДП) [8—10], суть которого заключается в конвейерном совмещении передачи данных с использованием ПДП одновременно в обоих полукомплексах [11]. Двойной ПДП потенциально позволяет ускорить межмашинный обмен при повышении отказоустойчивости дублированных комплексов [11,12] .

Организация дублированного комплекса. В качестве типовой рассмотрим реализацию дублированного комплекса (рис.1), каждый из полукомплексов которого содержит процессор (Р) и модуль памяти (М). Реконфигурация системы и обмен данными между полукомплексами осуществляются с использованием переключателя (5) [12, 13].

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

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

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

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

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

При построении марковской модели надежности восстанавливаемого комплекса с разделением нагрузки будем считать, что известны интенсивности отказов 'р , 'т , ' и восстановлений мр , цт , м процессора Р, модуля памяти М и переключателя 5, причем восстановление производится одним ремонтником после любого отказа. Ниже представлена матрица ин-тенсивностей переходов для марковской модели надежности исследуемой системы. Состояния системы отображаются пятью двоичными разрядами. Два старших и два младших разряда отображают состояния („0" — исправное, „1" — отказавшее) процессоров Р и модулей памяти М соответственно первого и второго полукомплексов. Третий разряд отображает состояние переключателя 5 . Коды состояний записаны в шестнадцатеричном виде.

0 1 2 3 4 5 6 7 9 А В Б Е Р 12 13 16 17 1В 1Р

0 0 2'т 2Хр 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

1 Мт 0 0 Хр 0 0 0 Т т 'р 0 0 0 0 0 0 0 0 0 0

2 Цр 0 0 т 0 0 0 0 Т 0 0 0 0 'р 0 0 0 0 0

3 0 Мр Мт 0 0 0 0 0 0 'т 0 0 0 0 'р 0 0 0 0

4 М* 0 0 0 0 2Хт 2'р 0 0 0 0 0 0 0 0 0 0 0 0 0

5 0 Ц* 0 0 Мт 0 0 'р 0 0 0 т 'р 0 0 0 0 0 0 0

6 0 0 М* 0 Мр 0 0 Т т 0 0 0 0 т 0 0 0 'р 0 0 0

7 0 0 0 М* 0 Мр Мт 0 0 0 0 0 0 т 0 0 0 'р 0 0

9 0 Цт 0 0 0 0 0 0 0 0 2'р 0 0 0 0 0 0 0 0

А 0 Мр Мт 0 0 0 0 0 0 0 'т 0 0 0 'р 0 0 0 0

В 0 0 0 Мт 0 0 0 0 Мр Мт 0 0 0 0 0 0 0 'р 0

Б 0 0 0 0 0 Мт 0 0 М* 0 0 0 0 2'р 0 0 0 0 0 0

Е 0 0 0 0 0 Мр Мт 0 0 М* 0 0 0 т 0 0 0 'р 0 0

Р 0 0 0 0 0 0 0 Мт 0 0 М* Мр Мт 0 0 0 0 0 0 'р

12 0 0 Мр 0 0 0 0 0 0 0 0 0 0 0 0 2Хт 0 0 0

13 0 0 0 Мр 0 0 0 0 0 Мр 0 0 0 0 Мт 0 0 т 0

16 0 0 0 0 0 0 Мр 0 0 0 0 0 0 0 М* 0 0 2'т 0 0

17 0 0 0 0 0 0 0 Мр 0 0 0 0 Мр 0 0 М* Мт 0 0 т

1В 0 0 0 0 0 0 0 0 0 0 Мр 0 0 0 0 Мт 0 0 0

1Р 0 0 0 0 0 0 0 0 0 0 0 0 0 Мр 0 0 0 Мт М* 0

Решение дифференциальных уравнений, составленных по матрице интенсивностей переходов, позволяет определить вероятности всех состояний комплекса и, в результате суммирования вероятностей работоспособных состояний, вычислить нестационарный коэффициент готовности (функцию готовности) К(т) комплекса [1].

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

Результат расчета нестационарного коэффициента готовности К(т) ДВК представлен на рис. 2: кривые 1 и 2 соответствуют комплексу на основе межмашинного обмена без ПДП и с использованием двойного ПДП. Расчет проведен при Хр =0,00005 ч-1, Хт =0,00015 ч-1, ^,=0,0001 ч-1; цр=цт=ц^=0,5 ч-1. При тех же исходных данных в результате решения системы алгебраических уравнений найдены значения стационарного коэффициента готовности Кг комплекса без ПДП и с использованием двойного ПДП, они равны соответственно 0,9999997 и 0,9999998.

К

0,99999995 0,9999999 0,99999985 0,9999998 0,99999975 0,9999997

, 2

1

0 10 20 30 40 50 60 70 80 90 т, ч Рис. 2

Оценка эффективности межмашинного обмена в дублированном комплексе.

Сравним эффективность ДВК при следующих вариантах межмашинного обмена:

— вариант В1: обмен в режиме ПДП с конвейерным совмещением передачи данных из модуля памяти М1 первого полукомплекса в буфер переключателя 5 и из него в модуль памяти М2 второго полукомплекса по магистралям обоих полукомплексов (обмен с двойным ПДП);

— вариант В2: обмен под управлением процессора Р с конвейерным совмещением передачи данных из модуля памяти М1 в буфер переключателя 5 и из него в модуль памяти М2 по магистралям обоих полукомплексов (программно управляемый обмен с конвейеризацией);

— вариант В3: обмен в режиме ПДП с занесением кадра из модуля памяти М1 в буферную память переключателя 5 с дальнейшей передачей этого кадра (после его полного приема) в модуль памяти М2 в режиме ПДП;

— вариант В4: обмен под управлением процессора Р с занесением кадра из модуля памяти М1 в буфер переключателя с дальнейшей передачей этого кадра (после его полного приема) в модуль памяти М2 под управлением процессора Р .

Время межмашинного обмена при передаче кадра из Ь слов для вариантов В1—В4 вычисляется соответственно как

Т1 =(Ь +1) + й, Т2 = (Ь +1) + Б, Т3 = 2 (Ы + й), Т4 = 4Ь + Б ,

где I — время передачи одного слова, й и Б — время инициализации и установления режима ПДП и режима прерывания.

Среднее время обмена для вариантов В1—В4 с учетом повторных передач кадров в случае сбоев определяется соответственно как

'-1

Т =

'=1

ю

Т2 =

г=1

ю

Тз = 2 (/ + d)/¿з (1 - ¿з)г-1

'-1

¿1= е"((¿+1)'+d)(Ч +^з) ;

Ь = е"((¿+1)2/ +Х2 +Хз) .

Ь = е-(2(^))(*2 +^3 ) .

'=1

ю

чг'-1

¿4 = е~

Т4 = ( + Б ) '¿4(1 - ¿4)' ' =1

где Х2, Х3 — интенсивности сбоев процессора Р, модуля памяти М и переключателя

Результаты расчета среднего времени Т межмашинного обмена в зависимости от длины L массива передаваемых данных (количества слов) без учета повторных передач из-за сбоев для вариантов межмашинного обмена В1—В4 представлены на рис. 3 соответствующими кривыми. Расчеты выполнены в предположении, что /=10 ч, d=5/ ч, Б=10/ ч. Представленные зависимости показывают эффективность межмашинного обмена на основе двойного ПДП, причем эта эффективность растет с увеличением объемов передаваемых данных.

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

т, ч

4-10-

310-

2-10-

1-10"-

Т, ч 4-10-6

В 4 В4 Вз

е *

- " 3-10-6 у В2

* _ *

Вз 2-10-6 В1

-

В2 В1 1-10-6

•

з

з

0 2-103 4-103 6-Ю3 8-103 Ь, слово 0 10 20 Ь, слово

Рис. 3 Рис. 4

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

Среднее время межмашинного обмена (Т1) с установлением канала двойного ПДП при разбиении передаваемого массива данных из L слов на к кадров вычисляется как

T =|[L + lj t + d J kf ib

i-1

b = e

L+d j

Зависимость величины T от числа k кадров, формируемых при передаче массива данных длиной L слов, представлена на рис. 5 для интенсивности сбоев X =Х2 =Х3 = X, когда Х=10-3 ч-1 и Х=10-4 ч-1. Из графиков видно, что существует оптимальное значение k, при котором в условиях сбоев (ошибок передачи) достигается минимальное время межмашинного обмена в режиме двойного ПДП.

Т, ч

1,001

1,0005

1 10 100 k

Рис. 5

Заключение. Представленные в настоящей статье результаты показывают:

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

— преимущество межмашинного обмена на основе использования двойного ПДП при условии, что длина передаваемых кадров превышает некоторое граничное значение, зависящее от времени установления ПДП;

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

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

1. Половко А. М., Гуров С. В Основы теории надежности: Учеб. пособие. СПб: БВХ-Петербург, 2008. 704 с.

2. Активная защита от отказов управляющих модульных вычислительных систем / И. Б. Шубинский, В. И. Николаев, С. К. Колганов, А. М. Заяц. СПб: Наука, 1993. 285 с.

3. Богатырев В. А. Отказоустойчивые многомашинные вычислительные системы динамического распределения запросов при дублировании функциональных ресурсов // Изв. вузов. Приборостроение. 1996. Т. 39, № 4. С. 81—84.

4. Богатырев В. А . Оценка надежности и оптимальное резервирование кластерных компьютерных систем // Приборы и системы. Управление, контроль, диагностика. 2006. № 10. С. 18—21.

5. Богатырев В. А. Мультипроцессорные системы с динамическим перераспределением запросов через общую магистраль // Изв. вузов СССР. Приборостроение. 1985. Т. 28, № 3. С. 33—38.

6. Богатырев В. А . Оптимальное резервирование системы разнородных серверов // Приборы и системы. Управление, контроль, диагностика. 2007. № 12. С. 30—36.

7. Bogatyrev V. A. Exchange of duplicated computing complexes in fault tolerant systems // Automatic Control and Computer Sciences. 2011. Vol. 46, N 5. P. 268—276.

8. Пат. 1679493 СССР, G 06 F 13/00. Устройство для сопряжения ведущей и ведомой ЭВМ / В. Ф. Беззубов и др. Б.И. 1993. № 8.

9. А.с. 1462341 СССР, G 06 F 15/16. Устройство для сопряжения ЭВМ / В. Ф. Беззубов. Б.И. 1989. № 8.

10. А.с. 1798946 СССР, Н 05 К 10/00, G 06 F11/20. Резервированная вычислительная система / В. Ф. Беззубов и др. Б.И. 1991. № 35.

11. Беззубов В. Ф. Сравнительный анализ методов обмена в многопроцессорных системах // Вестник компьютерных и информационных технологий. 2006. № 4. С. 51—56.

12. Голубев И. Ю, Богатырев В. А., Беззубов В. Ф. Сравнительный анализ структур отказоустойчивых дублированных вычислительных комплексов // Информационно-измерительные и управляющие системы. 2011. Т. 9, № 2. C. 8—12.

13. Богатырев В. А., Башкова С. А., Беззубов В. Ф. Надежность дублированных вычислительных комплексов // Науч.-техн. вестн. СПбНИУ ИТМО. 2011. Вып. 6. С. 74—78.

Сведения об авторах

Владимир Анатольевич Богатырев — д-р техн. наук, профессор; Санкт-Петербургский национальный

исследовательский университет информационных технологий, механики и оптики, кафедра вычислительной техники; E-mail: Vladimir.bogatyrev@gmail.com

— аспирант; Санкт-Петербургский национальный исследовательский университет информационных технологий, механики и оптики, кафедра вычислительной техники; E-mail: www.golubev@mail.ru

— аспирант; Санкт-Петербургский национальный исследовательский университет информационных технологий, механики и оптики, кафедра вычислительной техники

Поступила в редакцию 23.11.11 г.

Иван Юрьевич Голубев Владимир Федорович Беззубов

Рекомендована кафедрой вычислительной техники