2.1 Показатели и критерии оценки
Проблемной областью данного курсового проекта является разработка архитектуры КВС. Необходимо поставить и решить открытую задачу выбора аппаратной конфигурации вычислительного кластера с применением решателя открытых задач (РОЗ).
При анализе задачи будут учитываться следующие показатели:
количество вычислительных узлов в кластере
количество процессоров в вычислительном узле
тип процессора, на котором строится система
частота процессора
сеть, на которой построена КВС
емкость жесткого диска
емкость оперативной памяти
операционная система
Также должен быть учтен класс задач, на который будет ориентирована система.
Критериями оценки будут являться: производительность КВС, стоимость КВС.
Системы, полученные в результате поискового проектирования, нацелены на решение задач разной связности. Несмотря на то, что нет жесткой границы в степени связности задач, условимся различать три степени связности:
Слабосвязанные задачи;
Среднесвязанные задачи;
Сильносвязанные задачи.
Будет рассматриваться графовое представление задач. Графы будут без обратных связей, с различным соотношением времен выполнения узлов графа ( t р ) и передачи данных ( t п). В соответствие с этим соотношением для слабосвязанных задачи t р >> t п (рис. 2.1), для среднесвязанных t р t п (рис. 2.2), для сильносвязанных t р << t п (рис. 2.3) [1].
На рисунках 1, 2, 3 справа от каждой вершины графа указано время затрачиваемое на выполнение данной вершины (t р). Цифрами на связях между узлами графа указано время передач данных (t п). Будем представлять время в условных единицах.
Рис. 2.1
Рис. 2.2
Рис. 2.3
Архитектура КВС будет изменяться в соответствии с классом задач. Так, для сильносвязных задач необходимы более эффективные и быстродействующие сети, на которых строится КВС. Также, необходимы бо̀льшие емкости оперативной памяти в каждом узле, нежели в КВС, преднасзначенных для обработки слабосвязных задач. Таким образом, внешний показатель качества в явном виде связан с двумя внутренними показателями системы: скоростью сети и емкостью оперативной памяти.
С емкостями модулей оперативной памяти все не так сложно. Чем больше её ёмкость, тем больше система нацелена на сильносвязанные задачи. Частоту, на которой работают модули памяти, условимся принимать максимально наилучшей в соответствие сегодняшними стандартами, для любой вариации её ёмкости.
Про сети, на которых строятся КВС необходимо сказать подробнее. Ниже в таблице 2.1 представлены сети, которые будут использованы в поисковом проектировании.
Таблица 2.1:
Разворачиваемая сеть |
Пропускная способность |
Fast Ethernet |
100 Мбит/с |
Myrinet |
250 Мбит/с |
SCI |
325 Мбит/с |
cLAN |
400 Мбит/с |
Gigabit Ethernet |
1 Гбит/с |
QsNetII |
7 Гбит/с |
Infiniband |
40 / 32 Гбит/с |
Теперь, о каждой из технологий построения сетей отдельно.
Fast Ethernet (100BASE-T) — набор стандартов передачи данных в компьютерных сетях, со скоростью до 100 Мбит/с, в отличие от обычного Ethernet (10 Мбит/с). Длина сегмента кабеля 100BASE-T ограничена 100 метрами (328 футов). В типичной конфигурации, 100BASE-TX использует для передачи данных по одной паре скрученных (витых) проводов в каждом направлении, обеспечивая до 100 Мбит/с пропускной способности в каждом направлении (дуплекс).
Myrinet (ANSI/VITA 26-1998) — широко применяемый для построения кластеров тип коммуникационной среды. Ранее до 28 % (июнь 2005) кластерных установок из списка Top500 самых производительных компьютеров мира были построены с применением Myrinet. Теперь этот показатель упал до 2 % (2009 год).
SCI (англ. Scalable Coherent Interface, масштабируемая согласованная взаимосвязь) — компьютерная сеть, используемая для построения кластеров. SCI-кластеры имеют преимущество при решении задач, требующих большого количества пересылок коротких сообщений между узлами, так как в таких задачах время задержки (латентность) играет решающую роль.
cLAN cеть представляет собой сеть нижнего уровня сетевой модели OSI, интерфейс, который поддерживает связи с низкими накладными расходами и задержки, высокую пропускную способность, и эффективную и гибкую синхронизацию.
Gigabit Ethernet. Вследствие возрастания информационных потоков возникла потребность в увеличении скорости передачи стандарта Ethernet. Была предложена спецификация Gigabit Ethernet, принятая к разработке комитетом IEEE 802.3. 29 июня 1998 года был принят стандарт IEEE 802.3z. Он позволяет в несколько раз увеличить пропускную способность компьютерной сети без замены проводки, без значительных изменений в ее топологии и логической организации, без перехода к новым способам передачи данных, которые непосредственно несовместимы с имеющимися. Необходимы только сетевые устройства, поддерживающие новую спецификацию Gigabit Ethernet.
Полученная в результате доработки стандарта Ethernet спецификация 802.3ab (интерфейс 1000Base-T), определяет использование неэкранированной витой пары UTP категории 5 с максимальной длиной сегмента 100 метров. В отличие от 100Base-T, где для передачи данных задействовано только две пары, здесь используются все четыре пары. Скорость передачи по одной паре составляет 125 Мбит/с, что в сумме дает 500 Мбит/с. Для достижения скорости 1 Гбит/с была использована технология «двойной дуплекс» (dual duplex). Суть ее состоит в следующем. Обычно для передачи информации по одной паре используется один из фронтов распространяющегося по этой линии сигнала. Это означает, что передача информации может идти только в одном направлении, то есть одна пара может быть использована только для приема или передачи информации. Двойной дуплекс подразумевает использование обоих фронтов сигнала, то есть передача информации по одной паре происходит одновременно в двух направлениях, следовательно, пропускная способность одной пары возрастает до 250 Мбит/с. [2]
QsNet (Quadrics) — коммуникационная среда от компании Quadrics, обеспечивающая задержки на уровне SCI и пропускную способность до 900 мегабайт/сек (QsNet II). Ввиду высокой стоимости оборудования QsNet, как правило, применяется для построения особо крупных кластеров терафлопного диапазона.
В QsNet достигается компромисс между производительностью и простотой использования.
Предоставляются защищенный доступ к глобальной виртуальной памяти с помощью дистанционных операций DMA и расширение отказоустойчивости сети с помощью канального уровня (возможна повторная передача пакетов).
Infiniband — высокоскоростная коммутируемая последовательная шина, применяющаяся как для внутренних (внутрисистемных), так и для межсистемных соединений.
Infiniband использует двунаправленную последовательную шину. Базовая скорость — 2,5 Гбит/с в каждом направлении, применяются порты, состоящие из групп в 1x, 4x и 12x базовых двунаправленных шин (англ. lanes). Существуют режимы Single Data Rate (SDR) - работа с базовой скоростью, Double Data Rate (DDR) - битовая скорость равна удвоенной базовой и Quad Data Rate (QDR) - соответственно, учетверенной. Режимы SDR, DDR и QDR используют кодирование 8B/10B. В настоящий момент (2011 г.) чаще всего применяются порты 4x QDR.
Критерии оценки
Далее необходимо сказать о критериях оценки КВС. Критериями являются стоимость и производительность КВС.
Чем производительнее процессоры, больше по ёмкости модули оперативной памяти и жесткие диск тем производительнее получается каждый вычислительный узел системы. Но при этом вся система получается и дороже. Пожалуй, в большей степени на стоимость системы влияет количество вычислительных узлов из которых состоит КВС. Чем их больше тем лучше для производительности, но тем выше цена.
Для того чтобы составить базу знаний в соответствие с вышеописанными критериями, необходимо прибегнуть к принципу Парето.
Существует гипотеза о том, что в реальности нередко 20% элементов обеспечивают около 80% результата. Эта гипотеза основывается на так называемом принципе Парето, который был выдвинут итальянским экономистом Вилфредо Парето (1848-1923) и утверждает, что в пределах заданной группы или совокупности отдельные объекты имеют гораздо большее значение, чем то, которое соответствует их доле в численности этой группы. В соответствие с этим принципом составим график, который представлен на рисунке 2.4.
Рис. 2.4
На графике, изображенном на рисунке 2.4, изображена примерная зависимость производительности системы от её стоимости. Чем ниже стоимость, тем ниже производительность и наоборот. Руководствуясь принципом Парето, исключаем из рассмотрения системы, производительность и стоимость которых, слишком высокие (Отсекаемая область 1), а также системы производительность и стоимость которых слишком низкие (Отсекаемая область 2). В результате, получим только системы, попадающие в желаемую область, которые будут отвечать обоим критериям оценки КВС.
В ходе работы были изучены материалы, предоставленные производителями электронного оборудования, такими как, Intel, AMD, IBM и т. д [3 – 5]. Были изучены предложения магазинов уже готовых вычислительных узлов [6 – 8]. На основе полученной информации, были определены характеристики оборудования, используемого при построении КВС. Эти характеристики позволили составить список и значения параметров, которые использовались в поисковом проектировании с применением решателя открытых задач.
Создание базы данных и настройка решателя открытых задач
В редакторе параметров решателя открытых задач формируем список параметров, по которым будет проводиться оценка, а также задаются множества значений этих параметров. На рисунке 2.5 представлено окно редактора параметров. В таблице 2.2 отражены все параметры и их значения, введенные в базу данных.
Рис. 2.5
Параметр
№ Значения |
Количе-ство узлов |
Количество процессоров в узле |
Тип процессора |
Частота процессора |
Сеть |
Емкость жесткого диска |
Емкость оперативной памяти |
Операционная система |
Класс задач |
1 |
4 |
1 |
Intel Xeon |
1.2GHz |
Myrinet |
20GB |
4GB |
Unix |
Слабосвя-занные |
2 |
8 |
2 |
Intel Itanium 2 |
1.3GHz |
cLAN |
80GB |
12GB |
Windows NT |
Среденесвя-занные |
3 |
16 |
4 |
Intel Pentium 4 |
1.4GHz |
Gigabit Ethernet |
120GB |
24GB |
|
Сильносвя-занные |
4 |
32 |
8 |
AMD Athlon |
1.7GHz |
Fast Ethernet |
250GB |
48GB |
|
|
5 |
64 |
|
AMD Opteron |
1.8GHz |
Infiniband |
512GB |
64GB |
|
|
6 |
100 |
|
|
2.0GHz |
QsNetII |
768GB |
96GB |
|
|
7 |
300 |
|
|
2.2GHz |
SCI |
1000GB |
|
|
|
8 |
500 |
|
|
2.4GHz |
|
2000GB |
|
|
|
9 |
800 |
|
|
2.6GHz |
|
|
|
|
|
10 |
1000 |
|
|
2.66GHz |
|
|
|
|
|
11 |
2000 |
|
|
2.8GHz |
|
|
|
|
|
12 |
4000 |
|
|
3.06GHz |
|
|
|
|
|
13 |
5000 |
|
|
3.2GHz |
|
|
|
|
|
14 |
|
|
|
3.4GHz |
|
|
|
|
|
Стоит заметить, что КВС чаще строят на устаревших процессорах, так как упор в системе идет не на производительность отдельного процессора, а на параллельность вычислений. Также, такой подход позволяет снизить энергопотребление системы, что в наше время наиболее актуально. Надежность «обкатанных» устаревших процессоров повышает надежность всей системы и позволяет избежать неожиданных неисправностей. Разумеется, стоимость более старых процессоров ниже, что является ещё одним плюсом в их пользу.
Существуют комбинации параметров, которых не существуют в реальности. В данном случае это касается параметров «тип процессора» и «частота процессора». Эти комбинации называются запрещенными и вносятся в решатель в окне «редактор запрещенных комбинаций», представленном на рисунке 2.6. Таблица запрещенных комбинаций представлена в таблице 2.3.
Рис. 2.6
Параметр
№ Запр. комб. |
Тип процессора |
Частота процессора |
1 |
Intel Itanium 2 |
1.7GHz |
2 |
Intel Itanium 2 |
1.8GHz |
3 |
Intel Itanium 2 |
2.0GHz |
4 |
Intel Itanium 2 |
2.2GHz |
5 |
Intel Itanium 2 |
2.4GHz |
6 |
Intel Itanium 2 |
2.6GHz |
7 |
Intel Itanium 2 |
2.66GHz |
8 |
Intel Itanium 2 |
2.8GHz |
9 |
Intel Itanium 2 |
3.06GHz |
10 |
Intel Itanium 2 |
3.2GHz |
11 |
Intel Itanium 2 |
3.4GHz |
12 |
AMD Opteron |
1.2GHz |
13 |
AMD Opteron |
1.7GHz |
14 |
AMD Opteron |
2.6GHz |
15 |
AMD Opteron |
2.66GHz |
16 |
AMD Opteron |
2.8GHz |
17 |
AMD Opteron |
3.06GHz |
18 |
AMD Opteron |
3.2GHz |
19 |
AMD Opteron |
3.4GHz |
20 |
AMD Athlon |
3.06GHz |
21 |
AMD Athlon |
3.2GHz |
22 |
AMD Athlon |
3.4GHz |
Решатель открытых задач позволяет эксперту произвести начальную настройку системы: задать список параметров фактов и их значений, а также собрать из параметров удачные и неудачные сочетания. Таким образом, формируется начальная база фактов, после чего вступает в действие математический модуль решателя открытых задач [9].
Окна задания удачных и неудачных комбинаций решателя открытых задач приведены на рисунках 2.7 и 2.8, соответственно.
Удачные факты составляется на основе реально существующих систем [3 – 8]. Они приведены в таблице 2.4.
Неудачные факты составляются из параметров на основе ряда соображений. Так, не имеет смысла разворачивать высокоскоростную сеть в системе, где будет стоять мало вычислителей. Также, нет смысла ставить модули оперативной памяти большой ёмкости, так как, при малом количестве узлов, не придется держать большого количества передаваемых данных. Процессоры с низкой производительностью не способны быстро обрабатывать большие объёмы информации, а значит, ставить оперативную память большой ёмкости рядом с ними, также не имеет смысла.
На основе вышесказанного составляем неудачные факты, которые представлены в таблице 2.5.
Стоит отметить, что неудачных фактов на начальном этапе поискового проектирования не так много. Взаимодействуя с блоком качественной оценки, решатель добавит в базу неудачных фактов новые факты, соответствующие критериям качества.
Рис. 2.7
Рис. 2.8
Таблица 2.4:
Параметр
№ Значения |
Количе-ство узлов |
Количество процессоров в узле |
Тип процессора |
Частота процессора |
Сеть |
Емкость жесткого диска |
Емкость оперативной памяти |
Операционная система |
Класс задач |
1H - Удачный |
500 |
2 |
Intel Xeon |
3.2GHz |
QsNetII |
512GB |
48GB |
Windows NT |
Сильносвя-занные |
1L - Удачный |
100 |
2 |
AMD Athlon |
2.4GHz |
SCI |
250GB |
24GB |
Unix |
Слабосвя-занные |
1M - Удачный |
300 |
2 |
Intel Xeon |
2.4GHz |
cLAN |
250GB |
24GB |
Unix |
Среднесвя-занные |
2H - Удачный |
800 |
4 |
Intel Xeon |
3.4GHz |
Infiniband |
768GB |
64GB |
Unix |
Сильносвя-занные |
2L - Удачный |
300 |
4 |
Intel Itanium 2 |
1.4GHz |
Myrinet |
120GB |
12GB |
Windows NT |
Слабосвя-занные |
2M - Удачный |
500 |
4 |
Intel Pentium 4 |
2.6GHz |
Gigabit Ethernet |
512GB |
48GB |
Windows NT |
Среднесвя-занные |
3H - Удачный |
100 |
2 |
Intel Xeon |
3.2GHz |
QsNetII |
512GB |
64GB |
Unix |
Сильносвя-занные |
3L - Удачный |
300 |
4 |
AMD Opteron |
2.4GHz |
Myrinet |
250GB |
24GB |
Windows NT |
Слабосвя-занные |
3M - Удачный |
300 |
4 |
Intel Pentium 4 |
2.4GHz |
cLAN |
250GB |
64GB |
Unix |
Среднесвя-занные |
Таблица 2.5:
Параметр
№
Значения
Количе-ство узлов
Количество процессоров
в узле
Тип процессора
Частота процессора
Сеть
Емкость жесткого диска
Емкость оперативной памяти
Операционная система
Класс задач
1H - Неудачный
4
1
Intel Itanium 2
1.2GHz
Fast Ethernet
20GB
4GB
Windows NT
Сильносвя-занные
1L - Неудачный
4
1
AMD Athlon
1.2GHz
Fast Ethernet
20GB
4GB
Windows NT
Слабосвя-занные
1M - Неудачный
8
1
AMD Opteron
1.3GHz
Fast Ethernet
80GB
4GB
Unix
Среднесвя-занные
2H - Неудачный
8
1
AMD Opteron
1.3GHz
SCI
80GB
12GB
Windows NT
Сильносвя-занные
2L - Неудачный
4
1
Intel Itanium 2
1.3GHz
QsNetII
20GB
4GB
Unix
Слабосвя-занные
После введения всех параметров и их значений, создания базы удачных и неудачных фактов, производим построение функции выбора.
По окончанию построения функции выбора выдаётся информационное окно, сообщающее о количестве локальных максимумов, минимумов и нелинейных компонент (рисунок 2.9).
Рис. 2.9
Функция выбора принимает следующий вид (рисунок 2.10):
Рис. 2.10
На ней красным цветом обозначаются локальные максимумы, черным – локальные минимумы. Синим цветом обозначаются неудачные факты, зеленым – удачные. Под фактом понимается сложившийся набор значений параметров.
Кликнув на один из фактов, можно увидеть набор значений параметров. На рисунках 2.11, 2.12 представлены значения параметров для двух из четырёх локальных максимумов. На рисунке 2.13 – локального минимума.
Рис. 2.11
Рис. 2.12
Рис. 2.13
Как видим из рисунко, сложившиеся локальные максимумы и минимумы соответствуют соображениям, исходя их которых, мы создавали базы удачных и неудачных фактов.
Обратим внимание на локальный минимум. Им стал факт, в котором КВС состоит из малого количества вычислительных узлов. В каждом узле стоят по одному процессору с низкой производительностью, выбраны оперативная память и жесткие диски очень маленькими емкостей. Это действительно является плохим вариантом построения системы.
Напротив, взглянув на локальные максимумы, видим, что вычислительные системы, описанные в этих фактах, имеют хорошие значения параметров и хорошо сбалансированы. Это ещё раз доказывает то, что решатель открытых задач верно воспринял наши намерения, исходя из базы удачных и неудачных фактов.
При построении функции выбора, все значения параметров КВС получают свой вес. Таблица весов значений параметров приведена в таблице 2.6.
После построения функции выбора производим генерацию гипотез? После чего выдаётся окно, показанное на рисунке 2.14. Полученные гипотезы отправляются на блок качественной оценки, где будут оценены положительно, отрицательно, либо останутся неоцененными. На основе новых удачных и неудачных комбинаций мы сможем построить новую функцию выбора. Стоит заметить, что решатель открытых задач выдаёт гипотезы, содержащие запрещенные комбинации. Это будет учтено в блоке качественной оценки, который оценит все гипотезы содержащие запрещенные комбинации отрицательно.
Рис. 2.14
Таблица 2.6:
Параметр
№ Значения
Количе-ство узлов
Количество процессоров
в узле
Тип процессора
Частота процессора
Сеть
Емкость жесткого диска
Емкость оперативной памяти
Операционная система
Класс задач
1
-27
-45
-18
-18
10
-27
-36
-1
-3
2
-18
20
-13
-27
10
-18
-4
-7
-24
3
0
25
-1
5
5
5
15
-3
4
0
0
-4
0
-27
20
10
5
0
-38
0
5
15
15
6
-1
0
1
5
0
7
20
0
-4
0
8
10
-4
0
9
5
5
10
0
0
11
0
0
12
0
0
13
0
10
14
5