32
КАТЕДРА “КОМПЮТЪРНИ СИСТЕМИ” Маг. Инж. ДЕСИСЛАВА АНТОНОВА ИВАНОВА АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА МРЕЖА ЗА СУПЕРКОМПЮТРИ АВТОРЕФЕРАТ на дисертация за присъждане на образователна и научна степен „ДОКТОР” по научна специалност „Компютърни системи, комплекси и мрежи” Научни ръководители: проф. д-р инж. Пламенка Боровска доц. д-р инж. Петър Маноилов София, 2013 г. Т Е Х Н И Ч Е С К И У Н И В Е Р С И Т Е Т – С О Ф И Я

АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

КАТЕДРА “КОМПЮТЪРНИ СИСТЕМИ”

Маг. Инж. ДЕСИСЛАВА АНТОНОВА ИВАНОВА

АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА МРЕЖА ЗА

СУПЕРКОМПЮТРИ

АВТОРЕФЕРАТ

на дисертация

за присъждане на образователна и научна степен

„ДОКТОР”

по научна специалност „Компютърни системи, комплекси и

мрежи”

Научни ръководители: проф. д-р инж. Пламенка Боровска

доц. д-р инж. Петър Маноилов

София, 2013 г.

Т Е Х Н И Ч Е С К И У Н И В Е Р С И Т Е Т – С О Ф И Я

Page 2: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

2

Дисертационният труд е обсъден и насочен за защита от катедрен

съвет на катедра „Компютърни системи“ при ФКСУ, Технически

университет – София.

Защитата на дисертационния труд ще се състои на 18.03.2013 г. от

14:00 ч. в зала 1434.

Материалите по защитата са на разположение на интересуващите

се в канцеларията на ФКСУ, каб. 1443А на ТУ–София.

Автор: маг. инж. Десислава Антонова Иванова

Заглавие: Архитектура на колективна комуникационна мрежа за

суперкомпютри

Тираж: 30 бр.

Печатна база на ТУ-София

Page 3: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

3

ОБЩА ХАРАКТЕРИСТИКА НА ДИСЕРТАЦИОННИЯ ТРУД

Актуалност на проблема

Дисертационният труд е посветен на съвременните архитектури на колективни комуникационни мрежи за суперкомпютри. Системните комуникационни мрежи са критичен фактор и се явяват ограничаващ фактор за производителността на високопроизводителните компютърни системи. Дисертацията е свързана със синтезирането на архитектура на високоскоростна системна комуникационна мрежа за колективна комуникация в суперкомпютри, която да осигурява висока пропускателна способност, ниска латентност и висока степен на толерантност към откази. Проблемът е актуален, като се има предвид съвременните компютърни приложения изискващи високи скорости на информационната обработка, надхвърлящи възможностите на последователните компютри. През последните години се наблюдава множество от интензивни научни изследвания и разработки в областта на компютърните системи и софтуерното инженерство свързани с разработването на нови компютърни архитектури, чиято цел е да повишават паралелната компютърна производителност.

Цел и задачи на дисертационния труд

Основната цел на дисертационния труд е да се изследват съвременните архитектури на колективни комуникационни мрежи за суперкомпютри и на тази основа да се предложи и синтезира архитектура на високоскоростна системна комуникационна мрежа за колективна комуникация в суперкомпютри, която да осигурява висока пропускателна способност, ниска латентност и висока степен на толерантност към откази.

За изпълнението на основната цел се дефинират следните задачи:

1. Да се изследват и анализират съвременните тенденции при архитектурите на системните мрежи за колективна комуникация суперкомпютрите.

2. Да се предложи архитектурен проект на високоскоростна системна комуникационна мрежа за колективна комуникация за суперкомпютри, която да осигурява висока пропускателна способност, ниска латентност и релевантна степен на толерантност към откази.

3. Да се предложи архитектурен проект на рутер за системна мрежа за колективна комуникация.

4. Да се предложат ефективни алгоритми за колективна комуникация в суперкомпютрите.

5. Да се провери работоспособността и да се изследва ефективността на проектираната високоскоростна системна мрежа за колективна комуникация на основата на симулационни експерименти.

Научна новост

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

Page 4: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

4

йерархична многостъпална колективна комуникационна мрежа за суперкомпютри “Silicon Galaxy” с добри параметри на комуникационна производителност и висока устойчивост спрямо откази. Проектирана е aрхитектура на системна комуникационна мрежа за колективна интерклъстерна комуникация „Milky Way Galaxy“ и за интраклъстерна комуникация „Dwarf Galaxy“, която осигурява алтернативни маршрути при предаването на пакети, намалява вероятността от възникване на блокиране и улеснява осъществяването на колективната комуникация. Предложен е архитектурен проект на рутер, който осъществява колективната комуникация в суперкомпютрите. Дефинирани са алгоритмите за колективна комуникация с обмен на информацията от тип „Gossip“, „Broadcast“, „Multicast“; „Scatter“, „Reduce“ и „Gather“ в колективната мрежа “Silicon Galaxy” и са създадени сценарии за тяхната имплементация. Предложената архитектура на многостъпална йерархична колективната мрежа “Silicon Galaxy” е верифицирана на основата на симулационни експерименти в средата на мрежов симулатор Omnet++ при различно разпределение на трафика в мрежата. На основата на симулационни експерименти са оценени и анализирани параметрите на комуникационната производителност на колективната мрежа “Silicon Galaxy” при различните видове трафици, респективно латентност и пропускателна способност и е изследвано влиянието на размера на пакета (32, 64 и 128 флита) върху мрежовата латентност.

Приложимост и полезност

Получените резултати от дисертационния труд са внедрени в учебния процес за обучение на студенти от бакалавърска степен, специалност „Компютърно и софтуерно инженерство“ по дисциплината „Високо-производителни компютърни системи“, както и в два научно-изследователски проекта:

Научно-изследователски проект „Център за върхови постижения по суперкомпютърни приложения”, работен пакет 2 „Многопроцесорни комуникационни мрежи за PetaFLOPS суперкомпютри”, дог. ДЦВП/02, 2009г., финансиран от фонд „Научни изследвания”, МОН;

Научно-изследователски договор при НИС на ТУ-София в помощ на докторанти, договор №132ПД0046-09, на тема: „Архитектура на колективна комуникационна мрежа за суперкомпютри“.

Апробация

Резултатите от дисертационния труд за докладвани изцяло в катедра „Компютърни системи“ на Технически Университет-София, а основните и части са публикувани в сборници на следните конференции: International Conference „Computer Science“, 12-th WSEAS International Conference on Mathematical Methods, Computational Techniques and Intelligence Systems “MAMECTIS’10”, Kantaoui, Sousse, Tunisia и в сборник на националната школа и борса за научни идеи в областта на информационните технологии, част от международната конференция CompSysTech'13.

Page 5: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

5

Обем и структура

Дисертационният труд съдържа основен текст, структуриран в четири глави, заключение и списък с цитирана литература. Обемът е 129 страници, списъкът на литературните източници включва 111 заглавия. Номерата на фигурите и формулите в автореферата отговарят на тези в дисертацията.

ГЛАВА 1. КОЛЕКТИВНА КОМУНИКАЦИЯ ПРИ СУПЕРКОМПЮТРИТЕ

Голяма част от съвременните компютърни приложения изискват високи скорости на информационната обработка, надхвърлящи възможностите на последователните компютри. Ярко се очертават два основни подхода за постигането на висока компютърна производителност: технологични подобрения и архитектурни иновации. Съвременната стратегия за повишаване на компютърната производителност е фокусирана в изграждане на високопроизводителни инфраструктури и използване на паралелизми. Целта е да се предложат методологии и стратегия за разработване на устойчива екосистема в областта на високопроизводителни изчисления, като база за решаване на терамащабните изчислителни задачи. В продължение на десетилетия понятието „производителност“ е синоним на „скорост. Повишаването на производителността на компютрите и преходът към новите компютърни мощности е съпътстван с поредица от архитектурни иновации.

Системните комуникационни мрежи са изключително важни, тъй като те се явяват ограничаващ фактор за производителността на много системи. Взаимното свързване между процесор и памет до голяма степен определя латентността и пропускателната способност на системата. Това са двата ключови фактора, които определят производителността в суперкомпютрите. Отделните възли в съвременните суперкомпютърни системи са свързани помежду си чрез 5 различни мрежи – системна мрежа за комуникация „от-точка-до-точка“ (point-to-point), колективна комуникационна мрежа, бариерна мрежа, мрежа за контрол на системата и Етернет мрежа. Петте мрежи са гръбнакът на системата при комуникацията и изпращането на данни. Мрежите са решаващ фактор за подобряване на ефективността на системата и запазване на производителността. Освен това, от гледна точка на разработчика, колективната и бариерната мрежа са предназначени да подобрят някои характеристики като латентност и време за комуникация между възлите. Поради тази причина, за да се подобри работата, се изисква да се пишат такива приложения, при които повечето връзки да са в системната мрежа и така да се намали използването на глобалните операции. По този начин може да се използва максимално потенциала на суперкомпютъра.

Ключовите ресурси на паралелната компютърна архитектура са процесорите и колективната комуникационна мрежа. Суперкомпютрите са съставени от множество процесори, които са взаимосвързани чрез определена мрежова топология. Предаването на съобщения е единствения начин за обмен на информация между процесорите. При суперкомпютрите комуникацията се реализира чрез обмен на съобщения. Координацията на процесите (информационен обмен, синхронизация и взаимно изключване) при суперкомпютрите се реализират чрез комуникация. Очевидно е, че комуникацията между изчислителните възли е основата на всички приложения, изпълнявани на паралелни компютри. По отношение на броя на участниците, комуникацията в суперкомпютрите може да бъде „от-точка-до-точка” и

Page 6: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

6

колективна комуникация. Колективната комуникацията от тип „всички-с-всички” (“all-to-all”) е от най-интезивните и с най-натоварен трафик, която е изследвана в последните години. При разпръскване “всички-с-всички” всеки процесор в дадена процесорна група изпраща съобщение до всички останали процесори в групата. В зависимост от естеството на съобщението, което се изпраща, разпръскването „всички-с-всички” може да бъде по-нататък класифицирано като разпръскване „всички-с-всички” (“all-to-all broadcast”) и колективна комуникация с персонализиран обмен “всички-с-всички” (all-to-all personalized exchange) или “gossip”. Основното при комуникацията с персонализиран обмен е промяната на полученото съобщение. Повечето от паралелните алгоритми разделят проблема, който трябва да бъде решен на задачи, които се задават на различни единици за изпълнение (unit of execution). По този начин е възможно отделните задачи да бъдат изпълнени паралелно. След като всички задачи приключат необходимо e отделните резултати да бъдат обединени в едно решение, което да отговаря на началния проблем. Това се постига посредством комуникацията с редукция.

Колективните комуникации се отнасят до MPI функции, които използват всички процесори в рамките на определената комуникаторна група. Редица важни MPI функции са свързани с комуникацията между два специфични процеса. Oперациите „от-точка-до-точка“ са особено полезни в обмена на данни в паралелната архитектура. Колективните функции са свързани с комуникацията между всички процеси в група.

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

Създаден е широк набор от симулатори, емулатори и развойни среди поддържащи моделирането, симулирането и изпълнението на кода за оценка на комуникационните параметри на колективните мрежи. На базата на направения сравнителен анализ на съществуващите програмни средства за моделиране, сумулация и анализ на системни мрежи за колективна комуникация в суперкомпютри е избран софтуерния пакет „OMNeT++”. „OMNeT++” е симулационна среда, която включва специфични библиотеки (simulation framework and library) и Eclipse базирана графична среда за разработка. Съществуват и разширения за симулиране в реално време, емулиране на мрежи, както и възможност за използване на допълнителни програмни езици като Java и C# и възможност за интегриране на бази данни, както и много други допълнителни функции, даващи възможност за цялостно моделиране и анализиране на сложни мрежови архитектури.

Page 7: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

7

1.6. Изводи

1. Изследвани са и са анализирани съвременните тенденции при архитектурите и колективните системни комуникационни мрежи за суперкомпютри.

2. Изследвани са и са анализирани колективните комуникации в суперкомпютрите.

3. Изследвани са и са анализирани съвременните средства за моделиране и симулация на компютърни и комуникационни мрежи.

4. Дефинирани са основната цел и задачите на дисертационния труд.

ГЛАВА 2. ПРОЕКТИРАНЕ НА СИСТЕМНА МРЕЖОВА АРХИТЕКТУРА ЗА

КОЛЕКТИВНА КОМУНИКАЦИЯ В СУПЕРКОМПЮТРИ

2.1. Концептуален модел на системна мрежова архитектура за колективна

мрежа „Silicon Galaxy“

Анализът на технологичното развитие и иновациите на системните мрежови архитектури за колективна комуникация в суперкомпютрите от ранг листата на най-мощните изчислителни системи в света с производителност Petaflops показва устойчива тенденция към многомерни и йерархични мрежови архитектури с добра скалируемост. Най-популярната системна мрежова архитектура за колективна комуникация при топ суперкомпютрите, която заема лидерското място, е мрежа с топология дебело дърво. Въпреки лидерството си, тази мрежова архитектура за колективна комуникация има слабо място, коренът на дървото. Правят се архитектурни иновации в тази насока, като се дублират комуникационните връзки, при което броят им расте в посока на корена. Този подход за повишаване на надеждността на колективните мрежи в суперкомпютрите решава проблема отчасти, като не елиминира единичната точка на отказ – корена на дървото.

В настоящата дисертация се прилага иновативен подход за постигане на висока надеждност и толерантност към откази в комуникационните ресурси на системната мрежова архитектура за колективна комуникация, а именно многостъпална йерархична мрежова архитектура на системната мрежа за колективна комуникация, с висока надеждност, при която се елиминират единичните точки на отказ. Йерархичната структура на мрежовата архитектура осигурява добрата скалируемост на предложената мрежа.

Предлага се многостъпална йерархична мрежова архитектура на системната мрежа за колективна комуникация „Silicon Galaxy“. Предложената мрежова архитектура „Silicon Galaxy“ е изградена от мрежа за интерклъстерна комуникация „Млечен Път“ (“Milky Way Galaxy”) и „Галактикa Джуджета“ (“Dwarf Galaxy”), мрежа за комуникация в рамките на клъстерните сегменти (интраклъстерна комуникация, в шкафовете на суперкомпютрите).

Мрежата за колективна интерклъстерна комуникация „Milky Way Galaxy“ е изградена на базата на многостъпална комуникационна мрежа с топология „Пеперуда“. Тя осигурява колективната интерклъстерна комуникация между множеството от клъстери„Dwarf Galaxy“.

Комуникацията между изчислителните възли в рамките на всеки суперкомпютърен шкаф се осъществява от мрежата за интраклъстерна комуникация „Dwarf Galaxy“. Тази мрежа е многостъпална, йерархична и с

Page 8: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

8

хибридна топология. Топологиите, които са в оснавата на хибридния дизайн на мрежата за интраклъстерна комуникация „Dwarf Galaxy“ са „Дебело Дърво“ и „Клос“, нареченa „Гранд-Клос“ мрежа (Grand-Clos Network).

На фиг. 2.1.1 е показана системната мрежова архитектура за колективна комуникация “Silicon Galaxy”.

Фигура 2.1.1. Архитектурата на системна мрежа за колективна комуникация “Silicon Galaxy”

2.2. Архитектура на системна комуникационна мрежа за колективна

интерклъстерна комуникация „Milky Way Galaxy“

Системната мрежова архитектура за колективна комуникация “Silicon Galaxy” е изградена от мрежа за интерклъстерна колективна комуникация „Milky Way Galaxy“ и мрежова архитектура за интраклъстерна комуникация „Dwarf Galaxy“. Топологията на мрежовата архитектура за интерклъстерна колективна комуникация „Milky Way Galaxy“ е с регулярна структура „Пеперуда“ и с многостепенно разположение на рутерите на няколко стъпала.

Характерно за тази топология е наличието на „множествени“ корени – т.е. централното ниво може да е изградено не от един рутер, а от няколко. Съществува голям брой връзки от това ниво към по-долните, което улеснява и разпределя трафика и не позволява да има натоварване в една единствена

Page 9: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

9

точка. Параметрите, характеризиращи мрежата, са „n“ и „k“, които обозначават съответно броя на нивата и броя на връзките към всяко ниво преди или след настоящото (radix = 2k). Този вид мрежа е представител на мрежи, при които хостовете са свързани с рутерите от най-ниското ниво. Такава мрежа свързва

на брой хостове, използвайки рутери и комуникационни връзки.

На фиг. 2.2.1 е показана многостъпална мрежа с топология „Пеперуда“ имплементирана с рутери 2x2 (т.е. к=2), а броят на стъпалата е n=4. Така

изградената мрежа свързва 16 хоста: =16. Използвани са =32

рутера, с по =8 рутера на всяко ниво. В многостъпалната мрежа с топология „Пеперуда“ ясно се забелязват обособяването на подгрупи от рутери, осигуряващи комуникацията с отделна група хостове. Формираните поддървета, условно наречени подмрежи, показват на най-високото – нулево стъпало (root/spine), една голяма група от осем рутера, която покрива всички разклонения на мрежата. На първо ниво се обособяват две подгрупи рутери, всеки от които е свързан с два комутатора, намиращи се под него. Всяка подгрупа осигурява достъп до една четвърт от всички хостове. На следващото стъпало, се виждат осем на брой подмрежи от по два хоста.

Фигура 2.2.1. Многостъпална мрежа с топология Пеперуда, свързваща 16 хоста чрез рутери с радикс 2, разпределена на стъпала и условно разделена на подмрежи

За да се повиши надеждността на мрежата за интерклъстерна

колективна комуникация „Milky Way Galaxy“ с регулярна структура „Пеперуда“ и да се осигури толерантност при откази на комуникационни ресурси се синтезира циклична структура, резултат от комуникационната свързаност на мрежата за интерклъстерна колективна комуникация с иновативната неблокираща мрежа за комуникация в рамките на клъстерните сегменти „Галактикa Джуджета“ с топология „Гранд Клос“, фиг. 2.2.3.

Page 10: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

10

Фигура 2.2.3. Комуникационна свързаност в колективна мрежа “Silicon Galaxy”

Page 11: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

11

Комуникацията в синтезираната системна неблокираща мрежа с циклична структура „Silicon Galaxy” без единични точки на отказ се осъществява посредством GR рутери (“Galaxy Router”). Всеки рутер GR е изграден от четири “Galaxy Connectivity Modules”(GCM), всеки GCM е с радикс 64. В рамките на един комуникационен шкаф са разположени два GR рутера или осем GCM модула и така общата конфигурация на комуникационния шкаф е с радикс 1024.

Архитектурата на рутерите GR и конфигурацията на комуникационните шкафове са скалируеми и могат да се конфигурират в зависимост от изискванията за размерността на колективната мрежа „Silicon Galaxy”, която също е силно скалируема. В рамките на всеки клъстерен сегмент процесорните ядра комуникират отново посредством рутери GR с по-нисък радикс 8. Архитектурата на скалируемите рутери GR е базирана на неблокиращ кросбар.

2.3. Мрежова архитектура за интраклъстерна комуникация „Dwarf Galaxy“

Една от основните цели на дисертационния труд е да се проектира неблокираща и надеждна мрежова архитектура за комуникация в рамките на компютърните сегменти. Изследванията и усилията са насочени към проектиране и изграждане на мрежа с многостъпална, йерархична и хибридна топология. Известни са много вариации на основните топологии. Тъй като могат да бъдат комбинирани различни топологии в една и съща мрежа, хибридните мрежи са се появили като комбинация от поне два различни типа топологии. Целта е предимствата на една топология да покрият недостатъците на друга. В дисертационния труд, за синтеза и проектирането на мрежа за комуникация в рамките на клъстерните сегменти, обект на задълбочено изследване са многостъпалните и йерарични мрежи с топологии „Дебело Дърво“ и „Клос“.

Предложената нова мрежа „Гранд-Клос“ за интраклъстерна комуникация е хибриден дизайн, изградена от мрежи с топологии „Дебело Дърво“ и „Клос“, наречена „Гранд-Клос“. Хибридният модел на предложената мрежа „Гранд-Клос“ има значителни предимства, в сравнение с класическите „Дебело Дърво“ и „Клос“ топологии. Новият дизайн се състои от няколко свързани „Клоса“, в топология „Дебело Дърво“, фиг. 2.3.1. Най-важната част на топологията е наличието на хоризонтални връзки между възлите на „Дебело Дърво“ на същото ниво. Тези хоризонтални връзки минимизират комуникационните разходи и необходимия брой стъпки на колективните комуникации. Също така, тези хоризонтални връзки намаляват натоварването на „корена“ (root node). Обикновено, мрежата „Дебело Дърво“ се разделя на две части, при което целият трафик от първата част трябва да мине през корена за да достигне възлите от втората част. В предложения нов дизайн „Гранд-Клос“ хоризонталните връзки помагат в колективните комуникации между частите на мрежата, което води до увеличаване на пропускателната способност и сведени до минимум стойности на латентност. В допълнение, връзката между хоризонталните сегненти (closses), е надеждна, защото всеки възел има връзка с другите посредством кросбар.

Основната идея е да се използват предимствата на двете топологии по най-добрия начин в хибриден модел заедно с допълнително подобрение на дизайна посредством хоризонтални връзки. Тези подобрения водят до намаляване на комуникационните разходи в мрежата „Гранд-Клос“.

Page 12: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

12

Фигура 2.3.1. Мрежа „Гранд-Клос“ за комуникация в рамките на клъстерните сегменти

Един хоризонтален сегмент (един Клос) се състои от 8 възела (2 реда, 4 възела). Всеки възел от най-горния ред е свързан с всички 4 възела от най-долния ред, както и всеки възел от най-долния ред е свързан с всички възли от най-горния ред. Коренът (Clos, върха на дървото) е изграден от 6 възела на първия ред и 8 възела на втори ред. Мотив е нуждата от повече низходящи връзки. Той разполага с 16 връзки към второ ниво (8 за лявия клон и 8 за дясната част). Всеки Клос разполага с 8 връзки към възходящото ниво, 16 връзки към низходящото ниво и 8 хоризонтални връзки. Така, общият брой на възлите е 254 (30 малки клосове, изградени от 8 възли и 1-голям сегменг (Root Clos) изграден от 14 възли). Мрежата “Гранд-Клос” е изградена от рутери GR с радикс 8, фиг. 2.3.2.

Друг важна аспект на предложения дизайн са хоризонталните връзки между хоризонталните сегменти на същото ниво. За всеки сегмент, възли 2 и 4, (сини и черни стрелки), както и възли 1 и 3 (червени и оранжеви стрелки) са свързани към различни сегменти от двете части на „Дебелото Дърво“. Това помага да се намали броят на стъпките на комуникация (hops), по време на предаване на съобщенията.

Page 13: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

13

Фигура 2.3.2. „Гранд-Клос“ мрежа за комуникация в рамките на клъстерните сегменти

Предложената хибридна архитектура “Гранд-Клос” за комуникация в рамките на клъстерните сегменти позволява да бъдат избегнати недостатъците на двете отделни мрежови топологии, като се съчетаят техните предимства. С тази хибридна топология се увеличава надеждността на мрежата – „коренът” вече не е слабо място; избягва се ситуация, в която при повреда на възел, неговите наследници губят връзка с мрежата – комбинацията от двете топологии осигурява връзка на възлите от по-долно ниво с останалата част от мрежата, дори при повреда на възела „родител”. Същевременно с това тази топология ни позволява лесно да откриваме повреди в съобщителната среда, както и да се възползваме от лесното осъществяване на колективната комуникация. Едновременно с това, комбинацията от двете топологии осигурява алтернативни маршрути при предаването на пакетите и намалява вероятността от възникване на блокиране.

2.4. Архитектура на рутер GR за колективна комуникация

През последните пет години в областта на топ изчислителните машини се използват мрежови комуникационни модули и инфраструктури, които предоставят висока производителност, ниска латентност, качество на обслужването и надеждност. Освен това, те се проектират да бъдат мащабируеми. Тендициите в дизайна на високоскоростните рутери е да се повишава техния радикс. Спецификациите на архитектурата на високо-производителните рутери от последно поколение, определят връзката между процесорните възли, както и връзката с високопроизводителните входно /изходни възли, като например устройствата за съхранение. Едни от най-широко разпространените и използвани рутери при високопроизводителни клъстерни компютри са произведени от компаниите Меланокс (Mellanox), Волтер (Voltaire) и Интел (Intel).

Page 14: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

14

Технологиите, на които са базирани високоскоростните рутери в суперкомпютрите, позволяват на системните устройствата да комуникират и работят заедно като отделни възли в рамките на една интегрирана високопроизводителна изчислителна система. Поредицата от два или повече рутера, често се използва за подобряване на надеждността на интегрираната изчислителна система. Добавянето на все повече рутери води до увеличаването на общата пропускателна способност, като по този начин се увеличават и възможните пътища за комуникация между два възела. През последните пет години все повече се налага стратегията за използване на рутери с по-висок радикс, вместо повече рутери с по-нисък радикс.

В дисертационния труд е предложен нов дизайн на високоскоростен рутер GR, базиран на кросбар. Всеки рутер GR е изграден от четири “Galaxy Connectivity Modules” (GCM). Проектираният рутер GR е с радикс 512. Свързващите модули GCM и рутерите GR са силно скалируеми. Рутерите и изграждащите ги модули GCM могат да бъдат с различна размерност в зависимост от изисквания на колективната системна мрежа, за която ще бъдат използвани. Два рутера GR изграждат един комуникационен шкаф, фиг. 2.4.1.

Фигура 2.4.1. Комуникационен шкаф, изграден от два рутера GR

Така синтезирана архитектура на рутера GR, позволява да бъде използвана в разнообразни скалируеми мрежови структури с йерархични топологиии. Рутерът GR е подходящ за свързване на голям брой изчислителни ядра, фиг. 2.4.2 и фиг. 2.4.3.

Фигура 2.4.2. Рутер GR и свързаните към него „Dwarf Galaxy” клъстери

Page 15: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

15

Фигура 2.4.3. Скалируерми рутери GR и свързаните към тях „Dwarf Galaxy” клъстери

Подмрежите се управляват от алгоритъма за маршрутизация и управлението на потока на съответната подмрежа. Те прибавят или изключват устройства, присвояват локални идентификатори за всеки нов порт и постоянно поддържат и обновяват карта на връзките и ресурсите. Всеки канален адаптер има уникален глобален идентификатор, а комбинацията от двата идентификатора позволяват на рутерите GR да се вписват добре в по-големи мрежи.

Фигура 2.4.5 Архитектура на рутер GR

Page 16: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

16

Архитектурата на рутер GR е изградена от три стъпала и четири нива. Трите стъпала на рутера GR са предствени от входни регистри, FIFO опашки (буфери) и неблокиращ кросбар, имплементиран като напълно свързани мултиплексори и демултиплексори, а нивата са свързани модули GCM посредством неблокиращ кросбар (фиг. 2.4.5). Входните регистри (reg(*)) записват един флит и извличат неговата маршрутизираща информация. С архитектурата на GR се имплементира маршрутизация от тип „дупка на червея“ (wormhole routing).

Основните единици при потока от данни в суперкомпютрите са фит, флит и пакет. Едно съобщение е група от последователни флитове, които се предават от терминал-източник (source) към терминал-получател (destination). Това съобщение се състои от пакети. Пакетът е основната единица за маршрутиране и изготвяне на последователност от данни. Пакетите могат да се делят на флитове. Флитът (phit – physical transfer digit) е единица, която се предава по канала в един такт.

Форматът на пакетът е показан на фиг. 2.4.6. Полето DA (Destination Address) съдържа адреса на дестинацията. Битът GC/MWG (съкращенията: GC - идва от топологията „Grand-Clos“ за комуникация в сегментите “Dwarf Galaxy”, MWG – идва от мрежата “Milky Way Galaxy” за интерклъстерна комуникация) и указва, дали дестинацията на съобщението е в рамките на клъстерите “Dwarf

Galaxy”

=0 – интраклъстерна комуникация, или дестинацията на

съобщението е в друг клъстер

=1, т.е. съобщението трябва да се предаде

по мрежата “Milky Way Galaxy” за интерклъстерна комуникация. В полето “CC” (“CollectiveCommunication”) се указва типа на комуникацията. Локалният адрес представлява адреса на сървъра, който е получател на съобщението (DGA “Dwarf Galaxy Address” - адрес на дестинацията). В случая на интерклъстерна комуникация глобалният адрес (MWA “Milky Way Address”) представлява адреса на рутера GR в мрежата “Milky Way Galaxy”, който е свързан със съответния клъстер “Dwarf Galaxy”. Полето PAYLOAD съдържа данните на съобщението. Полето LC съдържа номера на логическият канал, който ще се използва при предаването на флитовете през рутера. Полето Q е за статистика, откриване корекция на грешки.

Фигура 2.4.6 Формат на пакета

В рутера GR се имплементира флитово комутиран метод за управление

на потока. Декомпозицията на пакетите и алокирането на комуникационните ресурси на ниво флитове позволява управление на информационния поток с финна гранула от тип „дупка на червея“ (Wormhole).

За преодоляване на блокирането, което възниква в резултат на управлението на потока от тип „дупка на червея“, в рутера GR се имплементира стратегия за комутация на физическите комуникационни канали на множество виртуални. В архитектурата на рутера GR е имплементирана стратегията върху единен физически канал да се асоциират два виртуални канала. Наред с управлението на потока, от изключително важност за ефективното транспортиране на пакетите в колективните мрежи на

Page 17: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

17

суперкомпютрите е алгоритмът за маршрутизация. Маршрутизацията в колективната мрежа „Silicon Galaxy“ се осъществява на две нива, фиг. 2.4.7.

Първото ниво на маршрутизация е в рамките на мрежата на интерклъстерна комуникация „Milky Way Galaxy“. Маршрутизацията на пакетите в мрежата „Milky Way Galaxy“ за интерклъстерна комуникация се осъществява с три стъпала. Маршрутизацията при стъпало 1 или маршрутизация “Dwarf Galaxy – MilkyWayGalaxy” (up_milkyway) се осъществява като от локалния GCM, пакетите се подават от клъстер - подател „Dwarf Galaxy“ през GCM към релевантния рутер GR на мрежата „Milky Way Galaxy“.

Второто стъпало на маршрутизация или маршрутизация на пакетите (side_butterfly) в рамките на мрежата „Milky Way Galaxy“ през рутерите GR и трето стъпало на маршрутизация или маршрутизация „MilkyWayGalaxy- Dwarf Galaxy” (down_dwarfs), съобщениято се подава от рутера GR, финализиращ маршрута през мрежата “MilkyWayGalaxy”, към локалния GCM, който маршрутизира съобщението към дестинацията в локалния „Dwarf Galaxy” клъстер. За реализиране на маршрутизацията на първо ниво в рамките на мрежата на интерклъстерна комуникация „Milky Way Galaxy“ са необходими три типа комуникационни връзки: up_milkyway, side_butterfly и down_dwarfs. На всяка комуникационна стъпка в модула АЛУ свързан с входната опашка се детектира, типа на комуникацията и в началото на входната опашка се изчислява изходния порт на локалния рутер, като използва маршрутизираща таблица. При интрaклъстерната комуникация в мрежата „Dwarf Galaxy” с топология „Grand-Clos“ съществуват три типа комуникационни връзки: GrandClos_up, GrandClos_down и GrandClos_shortcut. Подобно на комуникационните връзки в интерклъстерната мрежа, GrandClos_up, GrandClos_down и GrandClos_shortcut имплементират маршрутизацията в рамките на клъстерите „Dwarf Galaxy”, както следва:

GrandClos_up, осъществява маршрутизация на пакетите от даден GCM към релевантен GCM модул на по-горно ниво в рамките на мрежата за интраклъстерна комуникация с топология „Grand-Clos“.

GrandClos_down реализира маршрутизация на пакетите от даден GCM към релевантен GCM модул на по-долно ниво в рамките на „Dwarf Galaxy” клъстера.

GrandClos_shortcut имплементира хоризонталните връзки между определени GCM модули на едно и също ниво от мрежата за интраклъстерна комуникация.

Page 18: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

18

Фигура 2.4.7 Комуникационни връзки и маршрутизация в колективна мрежа „Silicon Galaxy“

Page 19: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

19

2.5. Изводи

1. Предложен е концептуален модел на високоскоростна системна мрежа за колективна комуникация „Silicon Galaxy“ в суперкомпютри, който осигурява добра скалируемост и устойчивост спрямо откази.

2. Синтезиран е архитектурен проект на системна комуникационна мрежа за колективна интерклъстерна комуникация „Milky Way Galaxy“.

3. Проектирана е мрежова архитектура за интраклъстерна комуникация „Dwarf Galaxy“ с висока устойчивост спрямо откази, която осигурява множество алтернативни маршрути за адаптивна маршрутизация.

4. Синтезиран е архитектурен проект на рутер GR за колективна комуникация и е предложен алгоритъм за маршрутизация в проектираната системна комуникационна мрежа.

ГЛАВА 3. АЛГОРИТМИ ЗА КОЛЕКТИВНА КОМУНИКАЦИЯ В “SILICON GALAXY”

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

3.1. Алгоритми за колективни комуникации с персонализиран обмен на информацията или „Gossiping“ в системна мрежа за колективна комуникация „Silicon Galaxy“

Характерното при алгоритъма за колективна комуникация с персонализиран обмен на информацията „Gossip“ е, че се изпраща едно и също съобщение от един процес до всички други процеси, но на всеки следващ етап съобщението се модифицира.

При алгоритъма за комуникация „един-към-всички“ (one-to-all), един елемент на процеса, изпраща персонализирано съобщение към друг елемент на процеса.

Page 20: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

20

Фигура 3.1.1. Алгоритъм за колективна комуникация с персонализиран обмен на информацията „Gossip“

Проблемът „Gossip“ в N процесорна комуникационна мрежа се състои

във факта, че всеки процесор трябва да разпръсква едно съобщение. Представен е ефикасен алгоритъм за генериране на план за комуникация с общо време за комуникация най-често – „N+R“, където R е радиусът на мрежата, когато множественото предаване на съобщения (message multicasting) е разрешено. Алгоритъмът започва с изграждане на обхващащо дърво (или дървовидна мрежа) с възможно най-малък радиус. Тогава всички комуникации се извършват в дървовидна мрежа, както следва: всеки процесор чака своя ред да предаде последователно до неговите „родител и деца“ всички съобщения в своето поддърво. Преди и след тези съобщения, всеки процесор трябва да предаде на своите „деца“ всички съобщения, произтичащи от други места в мрежата.

Ако желаната дестинация за транспортиране на съобщенията е извън рамките на клъстерните сегменти „Dwarf Galaxy“, тогава алгоритмите за маршрутизацията и колективна комуникация от тип „Gossip“ сработват в рамките на мрежата за интерклъстерна комуникация „Milky Way Galaxy“, в противен случай съобщенията се маршрутизират в интраклъстерната мрежа „Dwarf Galaxy“, фиг. 3.1.4. С различни цветове указани в легенда са обозначени модификацията на съобщенията транспортирани през нивата на мрежата за интраклъстерна комуникация с топология „Grand-Clos“, както и блоковете от данни, фиг. 3.1.5.

Page 21: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

21

Фигура 3.1.4. Имплементация на алгоритъм „Gossip“ в мрежа за колективна комуникация „Silicon Galaxy“

Page 22: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

22

Фигура 3.1.5. Имплементация на алгоритъм „Gossip“ в мрежа за интраклъстерна комуникация „Dwarf Galaxy“

3.2. Алгоритми за колективна комуникация с обмен на информацията от тип „Broadcast“ и „Multicast“ в системна мрежа за колективна комуникация „Silicon Galaxy“

Алгоритъмът за колективна комуникация с разпръскване от тип „Broadcast“ се използва за изпращане на съобщения с ранг „корен“ до всичките други процеси, включително и „корена“. Характерното при този тип комуникация е, че съдържанието в процесите „корени“, се копира във всички останали. алгоритъмът „Broadcast“ ни позволява да копираме данните от паметта на един процесор „корен“ в същото място на паметта на другите процесори.

Page 23: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

23

Фигура 3.2.1. Алгоритъм за колективна комуникация от тип „Broadcast“

В примера описан в комуникация „gossip“, стойност на променлива от

буфера в процесор 0, се разпръсква (broadcast) в буферите на другите три процесора, фиг. 3.2.1.

При имплементацията на алгоритъма с разпръскване „Broadcast“ в системна мрежа за колективна комуникация „Silicon Galaxy“, съобщенията се разпръскват в мрежата, като съобщенията не променят своето съдържание. Когато съобщенията се транспортират между клъстерите „Dwarf Galaxy“, алгоритмите за маршрутизация и колективна комуникация с разпръскване се прилагат в мрежата за интерклъстерна комуникация „Milky Way Galaxy“ (фиг. 3.1.4). При колективна комуникация в рамките на клъстерните сегменти, алгоритмите за маршрутизация и колективна комуникация с разпръскване се имплементират в мрежата за интраклъстерна комуникация “Dwarf Galaxy” с топология „Grand-Clos“.

Имплементацията на алгоритъма „Multicast“ е подобна на „Broadcast“, само че съобщенията се изпращат само до определен брой от възли (избрана група), не до всички. Алгоритмите за комуникация с обмен на информация от тип „Multicast“ представлява изпращане на едно съобщение до избрана група от процеси, т.е от процес с ранг „корен“ до специфицирана група процеси. Характерното тук е, че се изпраща само едно копие, т.е. връзката е „една-към-много“. В сравнение с „Broadcast“, алгоритъмът „Multicast“ е по–ефективен, защото съобщението при „Broadcast“ трябва да бъде получено от всички.

3.3. Алгоритми за колективни комуникации с обмен на информацията от тип „Scatter“ в системна мрежа за колективна комуникация „Silicon Galaxy“

Алгоритъмът за колективна комуникация с разпръскване от тип „Scatter“, пренася съобщение от процес с ранг „корен“, разпръсква данни до всички други процеси в групата. Комуникацията от тип „Scatter“, представлява комуникация „едно-към-много“ (one-to-all), т.е различни данни се изпращат от родителския процес до всички други процеси в групата. Когато се извиква функцията „Scatter“, главните процеси (root) отделят място в паметта и разделят съобщението на отделни сегменти, като започват да предават по една порция данни на всеки процесор. При колективна комуникация с разпръскване от тип „Scatter“, процес с ранг „root“ разделя съдържанието на данните на сегменти А,

Page 24: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

24

B, C, D, като първия сегмент се изпраща на процес с ранг 0, вторият – на процес с ранг 1, и т.н (фиг. 3.3.1).

Фигура 3.3.1. Алгоритъм за колективна комуникация с обмен от тип „Scatter“

При имплементацията на алгоритъма „Scatter“ в системна мрежа за колективна комуникация „Silicon Galaxy“, съобщенията се разделят на еднакви по големина сегменти и се предават на еднакви порции в мрежата. Когато съобщенията се транспортират между „Dwarf Galaxy“ клъстерите, алгоритмите за маршрутизация и колективна комуникация „Scatter“ се реализират в мрежата за интерклъстерна комуникация „Milky Way Galaxy“ (фиг. 3.1.4). При колективна комуникация в рамките на клъстерните сегменти, алгоритмите за колективна комуникация „Scatter“ се имплементират в мрежата за интраклъстерна комуникация “Dwarf Galaxy” с топология „Grand-Clos“.

3.4. Алгоритми за колективни комуникации с обмен на информацията с

редукция в системна мрежа за колективна комуникация „Silicon Galaxy“

Алгоритъмът за комуникацията с редукция предоставя възможност за събиране на данни от всеки процесор, данните се редуцират до единична стойност (като сума или максимум) и редуцирания резултат се съхранява в основния процесор (root).

Фигура 3.4.1. Алгоритъм за колективна комуникация с обмен на данните от тип редукция „reduce“

Page 25: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

25

Алгоритъмът за комуникация с редукция “Reduce” представлява комуникация от тип “all-to-one”, при която се осъществява редуциране на данните от всеки процес до единична стойност (например като сума), след което редуцираният резултат се съхранява в главния процес (root). Получаването на крайния резултат е следствие от комбинирането на междинни резултати, с помощта на оператор (сумиране, умножение и др.) Всеки мрежови сегмент от най-ниско ниво съдържа в изпращащия си буфер данни, които трябва да бъдат изпратени и редуцирани. Прави се комбиниране на елементите от входния буфер за всеки процес, използвайки специфичната операция. Основната цел на този тип алгоритъм за комуникация с редукция е връщане на резултата на корена (root) на процеса. Всеки възел трябва да приложи определена операция за редукция преди да изпрати своя резултат, фиг. 2.4.6. Всеки от осемте мрежови сегмента от най-ниско ниво съдържа по един пакет (от P1 до P8) в даден свързващ комуникационен модул, който трябва да се предаде на останалите свързващи комуникационни модули от по-високо ниво. Пакетът P1 от свързващ комуникационен модул на най-ниското ниво се предава на свързващ комуникационен модул от по-високо ниво. Тъй като комуникацията във всеки мрежови сегмент е „All-to-all“, то приетите пакети се обединяват и отново се редуцират в избран свързващ комуникационен модул. Тази операция се осъществява паралелно във всеки един мрежови сегмент. След като даден мрежови сегмент приключи с приемането на пакети, се осъществява комбиниране на пакетите (редуциране), след което става изпращането на данните, които се предават от „send buffer“ на „recеive buffer“, на мрежови сегмент от по-горно ниво. Комуникацията във всеки мрежови сегмент е от типа „All-to-all“. Следователно, всеки един от осемте свързващи комуникационни модули може да бъде избран за съхранение на редуцираните данни. Процесът на редукция се повтаря, докато данните не бъдат редуцирани и изпратени до корена (мрежови сегмент от най-горно ниво). Вижда се, че той съдържа всички пакети - от P1 до P8 и тъй като комуникацията между самите свързващи комуникационни модули е „All-to-all“, всички тези пакети се предават на един единствен комуникационен модул, който се нарича "гореща точка" (hot spot).

3.5. Алгоритми за колективни комуникации с обмен на информацията с редукция от тип „Gather“ в системна мрежа за колективна комуникация „Silicon Galaxy“

Алгоритъмът за комуникацията с обмен на информацията от тип „Gather“ се използва за събиране (обединяване) съдържанието на всички порции на съобщението и последващо им изпращане до процесор от по-горен ред, който съхранява цялото съобщение.

Page 26: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

26

Фигура 3.5.1. Алгоритъм за колективна комуникация с обмен на данните от тип „Gather“

Комуникацията с обмен на информацията от тип „Gather“ е комуникация с

редукция от тип „all-to-one“. Когато се извиква „Gather“ всеки процес (включително и root процесите) изпращат съдържанието на собствените си буфери към родителските процеси. В примера, илюстриран на фиг. 3.5.1, стойностите на променливата А за всеки процесор се обединяват и се съхраняват в процесор 0 в непрекъсната област от паметта. Алгоритъмът за комуникацията „Gather“ изисква всички процеси, включително и родителските процеси, да изпратят еднакво количество данни и данните да бъдат от един и същи тип.

При имплементацията на алгоритъма за колективна комуникация с редукция „Gather“ в системна мрежа за колективна комуникация „Silicon Galaxy“, съобщенията се предават в мрежата след прилагане на алгоритъма за редукция между нивата и обединяване на елементите на съобщенията от няколко процесора от по-ниски нива в мрежа в един единствен процесор от по-високо ниво. Когато съобщенията се транспортират между клъстерите „Dwarf Galaxy“, алгоритмите за колективна комуникация „Gather“ се имплементират в мрежата за интерклъстерна комуникация „Milky Way Galaxy“ (фиг. 3.1.4).

При колективна комуникация в рамките на клъстерните сегменти, алгоритмите за колективна комуникация „Gather“ се прилагат в мрежата за интраклъстерна комуникация “Dwarf Galaxy” с топология „Grand-Clos“.

Алгоритъм „Gather“ е изключително полезен при паралелните алгоритми, като например паралелнo сортиране.

3.6. Изводи

Предложени са алгоритми за колективни комуникации с обмен на информацията в системна мрежа за колективна комуникация „Silicon Galaxy“. Предложен е алгоритъм за колективни комуникации с персонализиран обмен на информацията („Gossiping“) в системна мрежа за колективна комуникация „Silicon Galaxy“. Предложен е алгоритъм за колективни комуникации с обмен на информацията от тип „Broadcast“ в системна мрежа за колективна комуникация „Silicon Galaxy“. Предложен е алгоритъм за колективни комуникации с обмен на информацията от тип „Multicast“ в системна мрежа за колективна комуникация „Silicon Galaxy“. Предложен е алгоритъм за колективни комуникации с обмен на информацията от тип „Scatter“ в системна мрежа за колективна комуникация

Page 27: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

27

„Silicon Galaxy“. Предложен е алгоритъм за колективни комуникации с обмен на информацията с редукция от тип „Reduce“ в системна мрежа за колективна комуникация „Silicon Galaxy“. Предложен е алгоритъм за колективни комуникации с обмен на информацията с редукция от тип „Gather“ в системна мрежа за колективна комуникация „Silicon Galaxy“.

ГЛАВА 4. ОЦЕНКА НА ПАРАМЕТРИТЕ НА КОМУНИКАЦИОННАТА

ПРОИЗВОДИТЕЛНОСТ

4.1. Параметри за оценка на комуникационната производителност

Комуникационната производителност на системните компютърни мрежи се определя от два основни параметъра – латентност и пропускателна способност. Основните аспекти на дизайна на системните мрежи в суперкомпютрите са: пропускателна способност на връзките, топологията, стратегията на комутация, алгоритъма за маршрутизация и управлението на потока. Тяхното комбинирано влияние определя латентността на съобщенията. В системните мрежи съществува тясна връзка между латентността и пропускателната способност на мрежата.

Локална пропускателна способност се дефинира като част от физическата пропускателна способност на комуникационната връзка в зависимост от ефективността на кодирането на пакета: b*n/(n+nE), където b е физическата пропускателна способност на комуникационната връзка, n е дължината на съобщението, а nE са допълнителните символи за съобщението.

Глобална пропускателна способност. Бисекция. Глобалната пропускателна способност на всички канали (или връзки) в мрежата се определя от броя на каналите С, умножен по пропускателната способност на един канал, т.е. C*b байта за секунда, C*w бита за цикъл, или С фита за цикъл. Ако всичките N хоста генерират по един пакет на всеки М цикъла със средна дистанция за комуникация h, то тогава всеки пакет заема средно h канала за l=n/w цикъла и глобалният товар в мрежата е N*l*h/M фита за цикъл. Средното използване на комуникационните връзки е очевидно по-малко от l и е най-малко:

ρ=M*C / N*l* h (1)

Капацитетът на всяка мрежа за данни може да се дефинира като количеството трафик, което може да бъде обменяно през/в нея за единица време. Например, ако се приеме, че дадена мрежа има структура от 4 двупосочни връзки, всяка с пропускателна способност 1 Gbit/s, това означава, че капацитетът на дадената мрежа е 8 Gbit/s. От друга страна, предложеният товар на мрежата е количеството трафик, което потребителите генерират и опитват да обменят в мрежата, получавайки определено количество предадени данни, което изисква разпределение на ресурсите. Поради тази причина предложеният товар на мрежата се дефинира като отношението между общото натоварване на мрежовия трафик и капацитета на мрежата, както е посочено в уравнение 2. Ефективният товар на мрежата се определя като отношението между осъществения трафик и капацитета на мрежата, както е посочено в уравнение 3.

Page 28: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

28

(2) (3)

Където: Loffered е предложеният товар на мрежата; Leffective е ефективният товар на мрежата; Li е количеството трафик, генериран от един потребител i (до n) за единица време; Cj е капацитетът на една връзка j (до m) в мрежата (приема се, че всички връзки имат еднакъв капацитет); Mi е количеството трафик, пренесен от дадена връзка i; n е броят на активните потребители в мрежата; m е броят на връзките в мрежата;

Целта при проектирането на паралелни компютри е да се осигури работен режим на системната мрежа далеч от точката на насищане или чрез осигуряване на много висока пропускателна способност при комуникация или чрез въвеждане на механизми за ограничаване на предлаганата пропускателна способност на мрежата.

4.2. Експериментална платформа и резултати

Експерименталната платформа включва мрежов симулатор OMNeT++ и IBM Blade Center, който е разположен в лабораторията по „Високо-производителни компютърни системи и ГРИД технологии“ към катедра „Компютърни Системи“ на Технически университет в София.

Групите от симулационни експерименти в дисертационния труд са насочени към оценка на комуникационната производителност на предложения архитектурен дизайн “SILICON GALAXY“ при различни алгоритми за колективна комуникация (разпръскване: Gossip Multicast, Broadcast и редукция- Reduce,) и различен рамер на пакета – 32, 64 и 128 флита при еднакъв брой пакети – 10000.

4.3. Обобщени резултати

Латентност (Latency).

Сравнителна диаграма на латентността при колективните комуникации „Multicast“, „Broadcast“, „Reduce“ и „Gossip“.

Фигура. 4.9. Латентност при комуникации Фигура. 4.10. Латентност при комуникации „Multicast“, „Broadcast“, „Reduce“ и „Gossip“ „Multicast“, „Broadcast“, „Reduce“ и „Gossip“ при размер на пакетите 32 флита и при размер на пакетите 64 флита и

брой на пакетите 10 000. брой на пакетите 10 000.

Page 29: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

29

Фигура. 4.11. Латентност при комуникации „Multicast“, „Broadcast“, „Reduce“ и „Gossip“ при

размер на пакетите 128 флита и брой на пакетите 10 000.

Извод: С увеличаване на предложения товар (Offered Load), при колективните комуникации „Multicast“, „Broadcast“, „Reduce“и „Gossip“, латентността на мрежата нараства. С увеличаване на размера на пакета, латентността също нараства. Най-ниски стойности за латентност се наблюдават при колективната комуникация „Multicast“, следвани от „Broadcast“ и “Reduce”. Най-високи стойности за латентност на мрежата се наблюдават при колективна комуникация „Gossip“.

Пропускателна способност (Throughput). Сравнителна диаграма на пропускателната способност при колективните

комуникации „Multicast“, „Broadcast“, „Reduce“ и „Gossip“

Фигура. 4.11. Пропускателна способност Фигура. 4.12. Пропускателна способност при комуникации „Multicast“, „Broadcast“, при комуникации „Multicast“, „Broadcast“,

„Reduce“ и „Gossip“ при разм. на пакетите „Reduce“ и „Gossip“ при разм. на пакетите 32 флита и брой на пакетите 10000. 64 флита и брой на пакетите 10000.

Фигура. 4.13. Пропускателна способност при комуникации „Multicast“, „Broadcast“, „Reduce“ и „Gossip“ при размер на пакетите 128 флита и брой на пакетите 10 000.

Page 30: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

30

Извод: С увеличаване на предложения товар (Offered Load), при колективните комуникации „Multicast“, „Broadcast“, „Reduce“ и „Gossip“, пропускателната способност на мрежата нараства. При колективните комуникации „Reduce“ и “Gossip” дори се наблюдава лек спад при последните две стойности на предложения товар (0.9 и 1). С увеличаване на размера на пакета пропускателната способност намалява. Най-високи стойности за пропускателна способност се наблюдават при колективната комуникация „Multicast“, следвани от „Broadcast“ и “Reduce”. Най-ниски стойности за пропускателна способност на мрежата се наблюдават при колективна комуникация „Gossip“.

4.4. Изводи

1. Предложената архитектура на системна мрежа за колективна комуникация „Silicon Galaxy“, както и предложените алгоритми за колективна комуникация са верифицирани на основата на симулационни експерименти в средата на мрежов симулатор Omnet++ при различно поведение на трафика в мрежата. Верификацията е направена за случаите на колективна комуникация „Multicast“, „Broadcast“, „Reduce“ и „Gossip“.

2. Пропускателната способност на мрежата е определена чрез отношението „предложен комуникационен товар/приет комуникационен товар” на основата на симулационни експерименти.

3. Изследвано е влиянието на размера на пакета (32, 64, 128 флита) върху мрежовата латентност на основата на симулационни експерименти като се вижда, че с увеличаване на размера на пакета, латентността също нараства.

ПРИНОСИ НА ДИСЕРТАЦИОННИЯ ТРУД

1. Предложен е концептуален модел на високоскоростна колективна мрежа за суперкомпютри, който осигурява добри параметри на комуникационна производителност.

2. На основата на предложения концептуален модел е предложен архитектурен проект на йерархична многостъпална колективна комуникационна мрежа за суперкомпютри “Silicon Galaxy” с добри параметри на комуникационна производителност и висока устойчивост спрямо откази.

3. Проектирана е aрхитектура на системна комуникационна мрежа за колективна интерклъстерна комуникация „Milky Way Galaxy“.

4. Проектирана е мрежова архитектура за интраклъстерна комуникация „Dwarf Galaxy“, която осигурява алтернативни маршрути при предаването на пакети, намалява вероятността от възникване на блокиране и улеснява осъществяването на колективната комуникация.

5. Предложен е архитектурен проект на рутер, който осъществява колективната комуникация в суперкомпютрите.

6. Дефинирани са алгоритмите за колективна комуникация с обмен на информацията от тип „Gossip“, „Broadcast“, „Multicast“; „Scatter“, „Reduce“ и „Gather“ в колективната мрежа “Silicon Galaxy” и са създадени сценарии за тяхната имплементация.

7. Предложената архитектура на многостъпална йерархична колективната мрежа “Silicon Galaxy” е верифицирана на основата на симулационни

Page 31: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

31

експерименти в средата на мрежов симулатор OMNeT++ при различно разпределение на трафика в мрежата.

8. На основата на симулационни експерименти са оценени и анализирани параметрите на комуникационната производителност на колективната мрежа “Silicon Galaxy” при различните видове трафици, респективно латентност и пропускателна способност и е изследвано влиянието на размера на пакета (32, 64 и 128 флита) върху мрежовата латентност.

ПУБЛИКАЦИИ, СВЪРЗАНИ С ДИСЕРТАЦИОННИЯ ТРУД

1. P. Borovska, O. Nakov, D. Ivanova, A. Ruzhekov, H. Mohamed, A Comparative Analysis of Next Generation High-End Switch Architectures, Fifth International Conference "Computer Science" 5-6 November 2009, International Workshops "Supercomputers Architecture and Applications", Technical University – Sofia, Bulgaria, Proceeding, pp. 7-12.

2. P. Borovska, O. Nakov, D. Ivanova, K. Ivanov, G. Georgiev, Communication Performance Evaluation and Analysis of a Mesh System Area Network for High Performance Computers, 12-th WSEAS International Conference on Mathematical Methods, Computational Techniques and Intelligence Systems (MAMECTIS’10), Kantaoui, Sousse, Tunisia, May 3-6, 2010, ISBN: 978-960-474-188-5, pp. 217-222.

3. Borovska, P., Ivanova, D., Ianakieva, V., Mitov, V., Alkaf, H., Comparative Analysis of Communication Performance Evaluation for Butterfly Bidirectional Multistage Interconnection Network Topology with Routing Table and Destination Tag Routing, International Scientific Conference Computer Science’2011, Ohrid, Macedonia, University for Information Science and Technology "St. Paul The Apostole", 01 - 03 September 2011, ISBN: 978-954-438-914-7, pp. 29-34.

4. Borovska, P., Nakov, O., Ivanova, D., Georgiev G., Ivanov K., Performance Evaluation of NoC for Homogeneous MPSoC with OMNeT++, International Scientific Conference Computer Science’2011, Ohrid, Macedonia, University for Information Science and Technology "St. Paul The Apostole", 01 - 03 September 2011, ISBN: 978-954-438-914-7, pp. 41-45.

5. Десислава Иванова, 2013, Архитектура на системна мрежа за колективна комуникация ГРАНД-КЛОС в суперкомпютри, Национална школа и борса за научни идеи в областта на информационните технологии, ISSN 1314-9024, стр. 67-72, Русе, България, 26-28.06.2013 г.

ВНЕДРЯВАНЕ НА РЕЗУЛТАТИТЕ ОТ ДИСЕРТАЦИОННИЯ ТРУД

1. Научно-изследователски проект „Център за върхови постижения по суперкомпютърни приложения”, работен пакет 2 „Многопроцесорни комуникационни мрежи за PetaFLOPS суперкомпютри”, дог. ДЦВП/02, 2009г., финансиран от фонд „Научни изследвания”.

2. Научно-изследователски договор при НИС в помощ на докторанти, договор №132ПД0046-09, на тема: „Архитектура на колективна комуникационна мрежа за суперкомпютри“.

3. Резултатите от дисертационния труд са внедрени в лабораторните упражнения по дисциплината „Високопроизводителни компютърни системи“, изучавана от студентите бакалаври, специалност „Компютърно и софтуерно инженерство“ към Факултета по Компютърни системи и управление на Технически Университет – София.

Page 32: АРХИТЕКТУРА НА КОЛЕКТИВНА КОМУНИКАЦИОННА ...konkursi-as.tu-sofia.bg/doks/SF_FKSU/ns/176/avtoreferat.pdf · 2014. 2. 17. · Цел и задачи

32

ARCHITECTURE OF COLLECTIVE COMMUNICATION NETWORK FOR SUPERCOMPUTERS

SUMMARY

The doctoral thesis focuses on the latest trends in supercomputer and high-performance computer architectures with emphasis of the important parameters for parallel computer performance. The individual nodes in modern supercomputer systems are interconnected through five communication networks. System communication networks in supercomputers are extremely important as they are the limiting and crucial factors for the parallel performance of computer systems.

The main objective of this thesis is to investigate the modern architectures of collective communication networks for supercomputers including research and analysis of supercomputer network designs, algorithms for parallel communications and software tools for modelling, verification, implementation and analysis of complex network designs for supercomputers. Based on the current state of the art, the thesis aims to propose high-speed network architecture for collective communications in supercomputers that provides high-bandwidth, low latency and high level of fault-tolerance.

The doctoral thesis provides an overview and analysis of latest network architectural designs for collective communications in top supercomputers. The mostly widely used parallel algorithms for collective communication have been presented: Gossip, Broadcast, Multicast, Gather, Scatter and Reduce.

The conceptual model of high-speed network for collective communication "Silicon Galaxy" has been proposed. Based on the proposed conceptual model, architectural design of hierarchical multistage network system for collective communication in supercomputers "Silicon Galaxy" has been designed with high resilience to failures by providing multiple alternative routes for adaptive routing. The proposed network architecture "Silicon Galaxy" is composed of "Milky Way Galaxy" network for intercluster communication and "Dwarf Galaxy" network for communication within the cluster segments (intracluster communication in supercomputers’ racks).

Architectural design of high-speed Galaxy Router (GR) has been suggested to perform the collective communication in supercomputers.

The parallel algorithms for collective communication "Gossip", "Broadcast", "Multicast"; "Scatter", "Reduce" and "Gather" have been designed. Scenarios for their implementation in the proposed collective network "Silicon Galaxy" have been created and presented.

The proposed architecture "Silicon Galaxy" has been verified based on simulation experiments in OMNeT++ environment. Communication performance parameters, latency and bandwidth have been evaluated and analysed. Verification and result analysis have been made for the case of "Multicast", "Broadcast", "Reduce" and "Gossip" collective communications in "Silicon Galaxy" network. The simulation groups of experiments show the influence of the package size (32 , 64, and 128 flits) and take into account the type of collective communications for the package count of 10000.

The experiments have been implemented on heterogeneous IBM Blade Center with configuration of 1000 cores, located at the High-Performance and GRID Computing Lab, Computer System Department, Technical University of Sofia.