Хибридна NUMA архитектура
Лекция #18
SMP архитектура, MPP архитектура и хибридна NUMA архитектура
3. Хибридна NUMA архитектура.
SMP архитектура
SMP (symmetric multiprocessing) е симетрична многопроцесорна архитектура. Основната характеристика на системите с SMP архитектура е наличието на обща физическа памет, споделяна от всички процесори.
Фигура 1 - Схематичен изглед на SMP архитектуратаа) простота и гъвкавост за програмиране. Архитектурата SMP не налага ограничения върху модела на програмиране, използван при създаване на приложение: обикновено се използва модел на паралелен клон, когато всички процесори работят независимо един от друг. Могат обаче да бъдат реализирани и модели, които използват междупроцесорен обмен. Използването на споделена памет увеличава скоростта на такъв обмен, потребителят също има достъп до цялото количество памет наведнъж. За SMP системите има доста ефективни средства за автоматично паралелизиране;
б) лекота на използване. Като правило SMP системите използват климатична система с въздушно охлаждане, което ги прави по-лесни за поддръжка;
в) относително ниска цена.
а) системите със споделена памет не се мащабират добре. Този значителен недостатък на SMP системите не ни позволява да ги считаме за наистина обещаващи. Причината за лошата мащабируемост е, че шината в момента е способна да обработва само една транзакция, което причинява проблеми с разрешаването на конфликти, когато множество процесори имат достъп до едни и същи области на споделена физическа памет едновременно. Компютърните елементи започват да си пречат един на друг. Възникването на такъв конфликт зависи от скоростта на комуникация и от броя на изчислителните елементи. INв момента могат да възникнат конфликти между 8-24 процесора. Освен това системната шина има ограничена (макар и висока) честотна лента (TS) и ограничен брой слотове. Всичко това очевидно пречи на увеличаването на производителността с увеличаване на броя на процесорите и броя на свързаните потребители. В реални системи можете да използвате не повече от 32 процесора.
За изграждане на мащабируеми системи, базирани на SMP, се използват клъстерни или NUMA архитектури. При работа със SMP системи се използва така наречената парадигма за програмиране на споделена памет.
MPP архитектура
MPP (масивна паралелна обработка) е масивна паралелна архитектура.Основната характеристика на такава архитектура е, че паметта е физически разделена. В този случай системата е изградена от отделни модули, съдържащи процесор, локална оперативна памет (RAM), комуникационни процесори (рутери) или мрежови адаптери, понякога твърди дискове и / или други входно / изходни устройства. Всъщност такива модули са пълнофункционални компютри (виж фиг. 2). Само процесори (CPU) от същия модул имат достъп до OP банката от този модул. Модулите са свързани чрез специални комуникационни канали. Потребителят може да определи логическия номер на процесора, към който е свързан, и да организира обмена на съобщения с други процесори. Използват се два варианта на работа на операционната система (ОС) на машини с MPP архитектура. В единия, пълноценна операционна система (ОС) работи само на управляващата машина (front-end), всеки отделен модул работи със силно намалена версия на ОС, което осигурява работата само на клона на паралелното приложение, намиращо се в него. Във втория вариант на всеки модулпълноценна UNIX-подобна операционна система, инсталирана отделно.
Фигура 2 - Схематичен изглед на архитектурата на разделената паметПредимства на MPP системите:
а) Основното предимство на системите с отделна памет е добрата мащабируемост: за разлика от SMP системите, в машините с отделна памет всеки процесор има достъп само до собствената си локална памет и следователно няма нужда от синхронизиране на часовника на процесорите. Почти всички рекорди за производителност днес са поставени на машини с точно тази архитектура, състояща се от няколко хиляди процесора (ASCI Red, ASCI Blue Pacific).
Недостатъци на MPP системите:
а) липсата на споделена памет значително намалява скоростта на междупроцесорния обмен, тъй като няма обща среда за съхранение на данни, предназначени за обмен между процесорите. Изисква специална техника за програмиране за осъществяване на обмен на съобщения между процесорите;
б) всеки процесор може да използва само ограничено количество от локалната банка памет;
в) поради тези архитектурни недостатъци са необходими значителни усилия, за да се максимизира използването на системните ресурси. Именно това определя високата цена на софтуера за масивни паралелни системи с отделна памет.
Системи с отделна памет са суперкомпютри МВС-1000, IBM RS/6000 SP, SGI/CRAY T3E, системи ASCI, Hitachi SR8000, системи Parsytec.
Най-новата серия CRAY T3E на SGI, базирана на процесори Dec Alpha 21164 с пикова производителност от 1200 Mflops/s (CRAY T3E-1200), е в състояние да мащабира до 2048 процесора.
Когато работят с MPP системи, те използват така наречената парадигма за масово преминаване на програмиране -програмна парадигма с трансфер на данни (MPI, PVM, BSPlib).
Хибридна NUMA
NUMA (nonuniform memory access) - неравномерен достъп до паметта. Основната характеристика на тази архитектура е неравномерният достъп до паметта.
Блокова схема на компютър с хибридна мрежа (фиг. 3): четири процесора са свързани помежду си с помощта на напречна лента в рамките на един SMP възел. Възлите са свързани с мрежа пеперуда (Butterfly):
Фигура 3 - Структурна диаграма на хибриден мрежов компютърЗа първи път идеята за хибридна архитектура беше предложена от C. Wolloch, той я въплъти в системите от серията Exemplar. Вариантът Volloch е система, състояща се от осем SMP възела. HP купи идеята и я внедри в серията суперкомпютри SPP. S.R.Cray подхвана идеята и добави нов елемент - кохерентен кеш, създавайки така наречената cc-NUMA (Cache Coherent Non-Uniform Memory Access) архитектура, която означава "неравномерен достъп до паметосигуряващкохерентносткешове". Той го внедри на системи като Origin.
Концепцията за кохерентност на кеша описва факта, че всички процесори получават еднакви стойности на едни и същи променливи във всеки даден момент. Всъщност, тъй като кеш паметта принадлежи на един компютър, а не на цялата многопроцесорна система като цяло, данните, които попадат в кеша на един компютър, може да не са достъпни за друг. За да избегнете това, трябва да синхронизирате информацията, съхранявана в кеш паметта на процесорите.
Има няколко начина за осигуряване на кохерентност на кеша:
а) използвайте механизма за проследяване на протокола на snoopy bus, при който кешовете проследяват променливи, предадени на някой от централните процесори и когатотрябва да модифицират собствените си копия на такива променливи;
б) отделете специална част от паметта, отговорна за проследяване на валидността на всички използвани копия на променливи.
Най-известните системи с архитектура cc-NUMA са: HP 9000 V-class в SCA конфигурации, SGI Origin3000, Sun HPC 15000, IBM/Sequent NUMA-Q 2000. Днес максималният брой процесори в системите cc-NUMA може да надхвърли 1000 (серия Origin3000). Обикновено цялата система работи под една операционна система, както при SMP. Възможни са и варианти на динамично "подразделение" на системата, когато отделни "дялове" на системата работят под управлението на различни операционни системи. При работа с NUMA системи, точно както при SMP, се използва така наречената парадигма за програмиране на споделена памет.
1. Каква е основната характеристика на системите със SMP архитектура?
2. Какви са основните предимства и недостатъци на SMP системите?
3. Каква е основната характеристика на системите с MPP архитектура?
4. Какви са основните предимства и недостатъци на MPP системите?
5. Коя е основната характеристика на системите NUMA?
6. Какво е кохерентност на кеша?
1. Архитектури и топологии на многопроцесорни изчислителни системи /А.В. Богданов, В.В. Корхов, В.В. Мареев, E.N. Станкова / - М .: INTUIT.RU "Интернет университет по информационни технологии", 2004. - 176 с.
следваща лекция ==> | ||
Тема: Органи на зрението, слуха, равновесието. | Пазар на труда, видове пазар на труда, модел на пазара на труда. |