Например, Бобцов

ОСОБЕННОСТИ ВЕРОЯТНОСТНОГО АНАЛИЗА ПРОИЗВОДИТЕЛЬНОСТИ И НАДЕЖНОСТИ ПРОБЛЕМНО-ОРИЕНТИРОВАННЫХ СРЕД ОБЛАЧНЫХ ВЫЧИСЛЕНИЙ

Особенности анализа производительности и надежности проблемно-ориентированных сред 51
УДК 681.3.069, 681.324

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

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

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

Введение. Концепция облачных вычислений предполагает, что пользователю предоставляются вычислительные ресурсы и сервисы с гарантированным уровнем качества, априори обеспеченным провайдером. Мера качества определяется бизнес-моделью предоставления сервиса. В частности, в рамках модели SaaS (Software as a Service) она связана как с надежно-

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

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

также пакеты прикладных программ, на основе которых формируются сервисы. По сравнению с нормативами автоматизированных систем для традиционных видов [1], оценка надеж-

ности сред облачных вычислений требует учета таких факторов, как распределенность, иерархичность и многовариантность использования. Как следствие, применение аппарата оценки показателей надежности программного обеспечения [2—4] требует определенной модификации в соответствии с принципами работы среды облачных вычислений как системы массового обслуживания.
В настоящей работе рассматриваются вероятностная модель функционирования среды проблемно-ориентированных облачных вычислений, связанные с ней показатели производительности прикладных сервисов и среды в целом, а также интегральный подход к оценке временных характеристик надежности.

Вероятностная модель среды облачных вычислений. Основой для функционирова-

ния среды является облако вычислительных ресурсов



=

{Ωi

}n i=1

;

где

Ωi

— физические ре-

сурсы — отдельные вычислительные системы (серверы приложений, хранилища данных и

пр.). Каждый вычислительный ресурс описывается кортежем, определяющим основные его технические характеристики:

Ωi = B, (q, p, Π)B , (m,µ), (d, D), ℑt ) i ,

(1)

здесь B — элемент из множества классов вычислительных архитектур (SMP, MPP, GPGPU,

FPGA, …), определяющих свойства, отражающие целесообразность запуска тех или иных паке-

тов. Производительность каждого ресурса характеризуется триплетом (q, p, Π)B , где q — количество ядер, p — количество процессоров, Π — количество узлов; марка B определяет их

иерархию в конкретной архитектуре. Оперативная память описывается набором (m,µ) объем-

ных характеристик памяти на узле m и в целом в системе µ (могут быть пересчитаны через

p, q, Π ). Дисковая память характеризуется аналогичными по смыслу величинами (d, D) .

ИЗВ. ВУЗОВ. ПРИБОРОСТРОЕНИЕ. 2011. Т. 54, № 10

52 Т. Н. Чуров, Д. А. Насонов, Б. Я. Штейнберг, А. В. Бухановский

Многомерное вероятностное распределение ℑt (T ) , где T = {t1, ..., tz } , описывает со-

ставляющие случайной изменчивости временных характеристик накладных расходов работы

с данной вычислительной системой как с физическим ресурсом Ωi в распределенной среде.

В простейшем случае они могут включать в себя время tw (Ξ) на передачу данных Ξ на фи-

зический ресурс Ωi и накладные расходы tr (Ω) системы управления вычислительным ресур-

сом Ωi . Такая высокоуровневая детализация позволяет использовать модель (1) как для „на-

стоящих“ физических ресурсов (серверов и суперкомпьютеров), так и для виртуальных сис-

тем (например, Грид-инфраструктур), доступных в „облаке“. В случае виртуальных систем

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

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

В качестве иллюстрации на рисунке приведены ядерные оценки маргинальных распре-

делений времени f(t) накладных расходов, возникающих при исполнении заданий в среде об-

лачных вычислений HPC-NASIS II [5], использующей ресурсы Грид Национальной нанотех-

нологической сети [6]. На рисунке, а показана плотность распределения времени выполнения

задания в Грид; видно, что при среднем времени выполнения около 85 с разброс может

составлять от 70 до 110 с, что характеризуется латентностью самой Грид-среды. Из этого

следует, что составляющая tr (Ω) может достигать 40 с. На рисунке, б представлена плот-

ность распределения нахождения задания в очереди, в — суммарные издержки среды облач-

ных вычислений на основе платформы CLAVIRE (CLoud Applications VIRrtual Environment).

Видно, что их разброс невелик; в среднем они в четыре раза меньше, чем издержки, связан-

ные с Грид. На рисунке, г приведена плотность распределения времени передачи данных; для

рассмотренного примера оно незначительно. В целом из рисунка видно, что латентность

Грид является существенной по сравнению с остальными накладными расходами среды

облачных вычислений, что требует ее отдельного учета в распределении ℑt (T ) .

а) f(t)

б) f(t)

0,06 1,5

0,04 1

0,02 0,5

0 70 80 90 100 t, c
f(t)
1
0,5

0 г) f(t)
3
2
1

1 2 tu, c

0 9 10 11 tr, c

0

1 1,5 tw, c

При предоставлении пользователю сервиса в процессе его запуска в облаке происходит

выделение (резервирование) виртуального ресурса Ω*i на физическом ресурсе Ωi , при этом

оставшийся ресурс Ωi = Ωi Ω*i может быть задействован для другой задачи. Эта операция

ИЗВ. ВУЗОВ. ПРИБОРОСТРОЕНИЕ. 2011. Т. 54, № 10

Особенности анализа производительности и надежности проблемно-ориентированных сред 53

позволяет рассматривать Ωi как физический ресурс, однако — с „ухудшенными“ (за счет вы-
деления под заданную задачу) характеристиками по сравнению с Ωi . Следует отметить, что изменение касается не только числовых характеристик вычислителей (количество процессо-
ров, узлов, ядер) и памяти, но и свойств распределения ℑt (T ) : при увеличении количества независимых приложений объем накладных расходов может возрастать (хотя бы в силу загрузки управляющего узла).
Вероятностная модель производительности сервисов в рамках SaaS. Модель (1) описывает ресурсную составляющую облачной среды в рамках модели IaaS (Infrastructure as a Service). Для описания процесса запуска на ней прикладных пакетов следует ввести модель сервиса

Σ j = Ξ j , S j (Ξ j , p, Ωi ), κij ,T0 j ,

(2)

который ассоциирован с каждым из физических ресурсов Ωi в (1). Здесь Ξ j — характери-

стики (объем, структура) входных и выходных данных сервиса, S j ( Ξ j , P, Ωi ) — формализа-

ция „внутреннего“ параллельного ускорения (например, в виде параметрической модели [7])

на физической системе Ωi в зависимости от количества занимаемых вычислительных ресурсов P = (q, p, Π) , κij — относительная пиковая производительность системы Ωi для задан-

ного сервиса Σ j , а T0 j — абсолютное время исполнения сервиса на „эталонном“ (т.е. вы-

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

Tij = tij + κijT0 j / S (Ξ j , P, Ωi ) .

(3)

Здесь индексы i, j обозначают целевой ресурс и тип сервиса. Величина t в (3) является

характеристикой накладных расходов на запуск сервиса, задаваемой распределением ℑt (T ) , и может быть представлена следующим образом:

t = tu (Ω, Ξ) + tr (Ω) + tw (Ξ) ,

(4)

где tu — накладные расходы на подготовку задания к исполнению в распределенной среде

Ω с данными Ξ , tr (Ω) — внутренние накладные расходы распределенной среды, tw (Ξ) —

совокупное время подготовки и передачи данных в распределенной среде.

При запуске каждого сервиса создается сессия Σi(jk) = Σ j (Ξ(jk) , S j (Ξ(jk) , P*, Ω*i ), κij ) . Ее

окончание включает в себя прикладной пакет j с заданными характеристиками исполнения,

функционирующий на выделенном виртуальном ресурсе Ω*i . Здесь P* в общем случае соответствует оптимальному режиму исполнения сервиса (для максимума функции S j (Ξij , P*, Ωi )

при ограничении на предельное число вычислителей на ресурсе Ωi ).
Таким образом, временной срез „общего“ процесса функционирования облачной среды в рамках модели SaaS представляется в виде

{ } ∪ ∪Σ =

Σi(jk ) (Ω*i )

k =1,M i=1,N

Ωl Ω*i .

j∈W l

i

(5)

ИЗВ. ВУЗОВ. ПРИБОРОСТРОЕНИЕ. 2011. Т. 54, № 10

54 Т. Н. Чуров, Д. А. Насонов, Б. Я. Штейнберг, А. В. Бухановский

Здесь k — индекс сквозной нумерации сессий пользователей, i — индекс сквозной нумерации виртуальных ресурсов, выделяемых под предоставление им сервисов, а j ∈W — иден-

тификаторы конкретных содержательных сервисов. При этом допускается одновременное наличие нескольких сессий одних и тех же пользователей с одинаковыми сервисами, разли-
чающимися, например, только параметрами запуска Ξi(jk) .

Множество Ω = ∪Ωl ∪ Ω*i определяет доступное облако ресурсов, которое может li
быть представлено в виде
( { })∪ ∪Ω = Ωl = Ωl Ω*al ,Ω*bl ,… , ll
т.е. с учетом того, что виртуальный ресурс выделяется на конкретной физической целевой системе. Таким образом, облако ресурсов может быть описано набором свободных физиче-

ских систем Ω с меньшим количеством вычислителей и иными характеристиками доступной

оперативной и дисковой памяти, по сравнению с исходной средой Ω .

Модель (3)—(4) определяет размерные характеристики производительности сервиса.

Однако для анализа эффективности применения среды облачных вычислений в рамках моде-

ли SaaS, по сравнению с традиционными моделями использования программного обеспече-

ния, целесообразно ввести ряд безразмерных характеристик:

— технологическая эффективность ϑ1 использования среды облачных вычислений в

сопоставлении с выделенной вычислительной системы с предустановленным пакетом (учи-

тываются накладные расходы на управление выделенной системой);

— пользовательская эффективность ϑ2 использования среды облачных вычислений в

сопоставлении с „чистым“ временем исполнения пакета на идеальной вычислительной сис-

теме (накладные расходы отсутствуют);

— абсолютная эффективность ϑ3 технических решений среды облачных вычислений в

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

(кластеры, Грид);

— относительная эффективность ϑ4 технических решений среды облачных вычисле-

ний в сопоставлении с техническими решениями низкоуровневой вычислительной инфра-

структуры для решения конкретной прикладной задачи, требующей передачи данных опреде-

ленного объема.

Поскольку выражение (3) определяет случайную функцию в соответствии с ℑt (T ) , оп-

ределяемые через него безразмерные характеристики ϑ1 − ϑ4 являются случайными величи-

нами. В табл. 1 приведены вероятностные характеристики эффективности среды облачных

вычислений HPC-NASIS II для примера, соответствующего рисунку.

Таблица 1

Характеристика

Моменты, с mx σx

Квантиль 10 %-ной обеспеченности, с

q10 % − I95 %

q10 %

q10 % + I95 %

ϑ1

88,0 0,9

88,9

89,4

89,8

ϑ2

72,3 4,5

76,2

78,1

80,0

ϑ3

159,4 64,5

235,8

275,6

315,4

ϑ4

58,3 9,7

67,6

72,0

76,3

Из таблицы следует, что оценка технологической эффективности ϑ1 достаточно устойчива (около 88—89 %). Разброс пользовательской эффективности ϑ2 существенно выше, а

ИЗВ. ВУЗОВ. ПРИБОРОСТРОЕНИЕ. 2011. Т. 54, № 10

Особенности анализа производительности и надежности проблемно-ориентированных сред 55

среднее значение — ниже (72 %), что можно объяснить учетом накладных расходов среды ГридННС. Абсолютная эффективность технических решений ϑ3 значительно превышает 100 % вследствие того, что накладные расходы платформы CLAVIRE, используемой в HPCNASIS II, существенно меньше накладных расходов ГридННС (см. рисунок, в). Относительная эффективность технических решений ϑ4 меньше, чем пользовательская эффективность
ϑ2 , в силу сходных затрат на передачу данных. Вероятностная модель надежности предоставления сервисов. В соответствии с мо-
делью (1)—(2), среда облачных вычислений может иметь два режима функционирования: — ожидания, когда в среде не выполняется ни одной сессии; все ресурсы свободны,
Ω = Ω;
— предоставления сервисов в соответствии с (5), когда Ω ⊂ Ω : в этой ситуации может быть одновременно запущено k сессий с различным временем выполнения.
Каждая сессия задействует ресурс Ωi , который может включать несколько вычислителей (узлов, процессоров, ядер). Как следствие, вероятность отказа пропорционально увеличи-

вается. Это позволяет использовать для оценки надежности условное время работы T0 j

параллельной программы на ресурсе Ωi , которое равно времени работы этой программы на

одном процессоре с данными характеристиками Ξij (3). Совокупное время работы в режиме

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

R
∑T = ClT0l fl (Pl*)(1− πl ) .

(6)

l =1

Здесь Cl — весовой коэффициент, отражающий потребительский интерес к использованию

прикладного пакета l , Pl* — оптимальное количество вычислителей (ядер, процессоров, уз-

лов), T0l — среднее время использования пакета (по разным наборам исходных данных), πl

— вероятность отказа конкретного сервиса. Функция fl (Pl*) ≥ 1 отражает дополнительные
накладные расходы на поддержку параллельного выполнения пакета. Она может быть представлена в различных параметризациях, например, в форме закона Амдала. Однако примени-

тельно к задаче определения среднего времени наработки на отказ можно полагать f ≡ 1 с

ошибкой в безопасную сторону. Величина T0l определяется путем тестового исполнения ти-

повых задач. Величины Сl определяются экспертно специалистами предметной области, а πl — путем тестирования соответствующих прикладных пакетов в процессе их разработки и

опытной эксплуатации. Например, пусть на момент тестирования пакета имеется K ошибок.

На первом этапе тестирования было произведено τ1 запусков программного обеспечения и

обнаружено k1 ошибок. После проведения мероприятий, направленных на устранение оши-

бок, в пакете остается K − αk1 ошибок. Коэффициент α связан с тем, что при внесении исправлений (устранении обнаруженных при тестировании ошибок) могут появиться новые

ошибки. Соответственно после проведения т-го этапа тестирования, потребовавшего τm за-
m
пусков программы, в ней остается K − α∑ k j ошибок. j =1

ИЗВ. ВУЗОВ. ПРИБОРОСТРОЕНИЕ. 2011. Т. 54, № 10

56 Т. Н. Чуров, Д. А. Насонов, Б. Я. Штейнберг, А. В. Бухановский

В предположении, что число ошибок сλ в программе распределено по закону Пуассона, где λ — частота появления ошибки, а с — коэффициент пропорциональности, вероятность безотказной работы p(0) = 1 − π и среднее время наработки на отказ ET имеют вид

∑ ∑ ∑p(0)

=

exp

⎛ ⎜⎝⎜



⎛ ⎝⎜⎜

γ

m
− β ki
i=1

⎞ ⎠⎟⎟

t

⎞ ⎠⎟⎟

,

ET

=

1−

1

exp

⎛ ⎜⎝⎜



⎛ ⎝⎜⎜

γ



β

m i=1

ki

, ET ⎞⎞ ⎟⎟⎠ ⎟⎟⎠



γ

1
m
− β ki
i=1

,

(7)

где γ = cK ,β = cα — приведенные параметры, оцениваемые методом максимального правдо-

подобия. В общем случае оценки Kˆ и K − αki могут принимать нецелые значения, так как

число ошибок до проведения тестирования — случайная величина, и в модели в качестве

параметра присутствует математическое ожидание числа ошибок. Для оценки частоты воз-

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

квадратов.

Учитывая, что среда облачных вычислений используется разными пользователями, за-

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

ды в целом как среднюю длину серии успешных независимых запусков до первого отказа.

Поскольку каждый запуск подчиняется распределению Бернулли, то длина всей серии будет

распределена в соответствии с геометрическим законом f (n) = (1 − πΣ )n πΣ . Среднее значение

этого распределения n = 1/ πΣ , таким образом:

TΣ = Tˆ πΣ .

(8)

Модель (8)—(9) является обобщенной по отношению к исходному разнообразию функ-

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

кладных сервисов, в силу того что рассматривает последовательность запуска одинаковых

„усредненных“ сервисов со средним временем выполнения TΣ .

В качестве примера в табл. 2 приведены значения параметров выражения (6) для пред-

метно-ориентированных сервисов среды HPC-NASIS II.

Таблица 2

Прикладной пакет

Сl, %

Параметры

Tl , мин

Pl*

πl , %

SEMP

10 600 1 1

PRIRODA

15 30 8 0,5

NDDO

10 5 8 3

DPIMC

0,1 300 8 1

MD- kMC

15 600 8 1,5

NTDMFT

5 300 8 1

JAGGREGATE 0,1 3 8 1

QDLaser

0,1 3 8 1

PLASMON

0,1 1 8 1

NANOIMAGE

10 10 24 1

NANOFLOW

4,4 60 24 5

NAEN

0,1 3 24 2

MAGNET

0,1 10 24 3

GAMESS

15 60 8 0

ORCA

15 60 8 0

В табл. 2 для компонентов GAMESS и ORCA принято πl = 0 , в силу того что эти ком-
поненты являются внешними подключаемыми пакетами и не подвергались тестированию в ходе разработки. Используя данные из табл. 1 в (6)—(8), получим точечную оценку среднего

ИЗВ. ВУЗОВ. ПРИБОРОСТРОЕНИЕ. 2011. Т. 54, № 10

Особенности анализа производительности и надежности проблемно-ориентированных сред 57
времени безотказной работы всего комплекса — TΣ = 965 ч. При этом выборочная изменчивость такой оценки достаточно велика. В частности, для верхней границы 90 % доверитель-
ного интервала πΣ , в силу того что в (8) выполняется деление на относительно малую величину, получается следующая оценка снизу времени безотказной работы: TΣ−90 % = 643 ч.
Заключение. Вероятностные модели производительности (1)—(5) и надежности (6)—(8) ориентированы на выполнение поверочных расчетов для оценки качества функционирования сервисов в ходе разработки и опытной эксплуатации проблемно-орентированных сред облачных вычислений.
Работа выполнена при поддержке проектов Минобрнауки по реализации Постановлений № 218 и 220 Правительства Российской Федерации (2010—2012 гг.).

СПИСОК ЛИТЕРАТУРЫ

1. Надежность автоматизированных систем управления. ГОСТ 24.701 86.

2. Shooman M. L. Operational Testing and Software Reliability Estimation During Program Development, Record // IEEE Symp. on Computer Software Reliability. 1973. N 73. P. 51—76.

3. Благодатских В., Волик В., Поскакалов К. Стандартизация разработки программных средств. М.: Финансы и статистика, 2005. 288 с.

4. Майерс Г. Искусство тестирования программ. М.: Финансы и статистика, 1982. 174 с.

5. Спельников Д. М., Гуськов А. А., Маслов В. Г., Бухановский А. В. Учебно-научный комплекс „Компьютерное моделирование в нанотехнологиях“ на основе Грид-среды // Изв. вузов. Приборостроение. 2011. Т. 54, № 10. C. 44—50.

6. [Электронный ресурс]: .

7. Бухановский А. В., Ковальчук С. В., Марьин С. В. Интеллектуальные высокопроизводительные программные комплексы моделирования сложных систем: концепция, архитектура и примеры реализации // Изв. вузов. Приборостроение. 2009. Т. 52, № 10. C. 5—24.

Тимофей Николаевич Чуров Денис Александрович Насонов Борис Яковлевич Штейнберг Александр Валерьевич Бухановский

Сведения об авторах — НИИ Наукоемких компьютерных технологий Санкт-Петербург-
ского государственного университета информационных технологий, механики и оптики; младший научный сотрудник; E-mail: tchurovtim@gmail.com — НИИ Наукоемких компьютерных технологий Санкт-Петербургского государственного университета информационных технологий, механики и оптики; младший научный сотрудник; E-mail: denis.nasonov@gmail.com — д-р техн. наук; Южный федеральный университет, кафедра алгебры и дискретной математики, Ростов-на-Дону; зав. кафедрой; E-mail: borsteinb@mail.ru — д-р техн. наук, профессор; НИИ Наукоемких компьютерных технологий Санкт-Петербургского государственного университета информационных технологий, механики и оптики; директор; E-mail: avb_mail@mail.ru

Рекомендована НИИ НКТ

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

ИЗВ. ВУЗОВ. ПРИБОРОСТРОЕНИЕ. 2011. Т. 54, № 10