Аппараттық және бағдарламалық қамтамасыз етуді орнату

Кластерлік жүйелер: Аннотация: Компьютерлер және перифериялық құрылғылар. Beowulf мысалы - Avalon кластерін енгізу

Кластерлік есептеу жүйелері MPA жүйелерінің архитектурасына тән идеялардың дамуының жалғасы болды. Егер MPA жүйесінде процессор модулі толық есептеу түйіні ретінде әрекет етсе, кластерлік жүйелерде мұндай есептеу түйіндері ретінде коммерциялық қол жетімді компьютерлер қолданылады. Коммуникациялық технологиялардың дамуы, атап айтқанда, стандартты желілік хаттамалар арқылы хабарламаларды тасымалдау механизмін жүзеге асыратын MPI (Message Passing Interface) сияқты жоғары жылдамдықты желілік жабдықтың және арнайы бағдарламалық кітапханалардың пайда болуы кластерлік технологияларды жалпыға қолжетімді етті. Қазіргі уақытта көптеген шағын кластерлік жүйелер компьютерлердің есептеу қуатын зертханада немесе аудиторияда біріктіру арқылы құрылуда.

Кластерлік технологиялардың тартымды ерекшелігі талап етілетін өнімділікке қол жеткізу үшін олар гетерогенді жүйелерді құруға мүмкіндік береді, яғни компьютерлерді біріктіреді. әртүрлі түрлерідербес компьютерлерден қуатты суперкомпьютерлерге дейін. Кластерлік технологиялар суперкомпьютер класындағы жүйелерді құру құралы ретінде кеңінен қолданылады құрамдас бөліктержаппай өндіріс, бұл есептеу жүйесінің құнын айтарлықтай төмендетеді. Атап айтқанда, 1998 жылы алғашқы жобалардың бірі 25 қос процессорлы жеке компьютер негізінде құны бірнеше миллион доллар тұратын 48 процессорлы Cray T3D-ге баламалы өнімділігі бар жүйе құрылды. жалпы құны шамамен $ 100 000 болатын компьютерлер. ...

Лайл Лонг, Пенн Стейт университетінің аэроғарыштық инженерия профессоры салыстырмалы түрде арзан кластерлік есептеу жүйелері академиядағы қымбат суперкомпьютерлерге балама бола алады деп есептейді. Оның жетекшілігімен университетте COCOA кластері салынды. Осы жоба аясында 25 жұмыс

DELL баррель станциялары, әрқайсысында екі Pentium II / 400 МГц процессорлары, 512 МБ жедел жады, 4 ГБ қатты дискі бар SCSI дискісіжәне Fast Ethernet желі адаптері. Түйіндерді қосу үшін бір кеңейту модулі бар 24 портты Baynetworks 450T қосқышы пайдаланылады. Орнатылған бағдарламалық құрал RedHat Linux операциялық жүйесін, Portland тобының Fortran 90 және HPF компиляторларын, тегін MPI іске асыру Message Passing Interface Chameleon (MPICH) және DQS кезек жүйесін қамтиды.

38-ші Аэроғарыштық Ғылыми Жиналыста және Көрмеде ұсынылған мақалада Лонг әртүрлі жерлерде тікұшақ шуының деңгейін болжау үшін қолданылатын автоматты жүктемені теңестіру арқылы есептеу бағдарламасының параллель нұсқасын сипаттайды. Салыстыру үшін бұл есеп айырысу бағдарламасы 512 нүктелік шуды есептеу үшін үш түрлі 48 процессорлы компьютерде іске қосылды. Cray T3E жүйесінде есептеу 177 секундты, SGI Origin2000 жүйесінде - 95 секундты, ал COCOA кластерінде - 127 секундты құрады. Осылайша, кластерлер осы сыныптың тапсырмалары үшін өте тиімді есептеу платформасы болып табылады.

Кластерлік жүйелердің суперкомпьютерден артықшылығы – олардың иелері ірі суперкомпьютер орталықтарындағыдай процессор уақытын басқа пайдаланушылармен бөлісудің қажеті жоқ. Атап айтқанда, COCOA жылына 400 мың сағаттан астам процессор уақытын қамтамасыз етеді, ал суперкомпьютер орталықтарында 50 мың сағатты алу қиын болуы мүмкін.

Әрине, бұл жүйелердің толық эквиваленттілігі туралы айтудың қажеті жоқ. Өздеріңіз білетіндей, таратылған жады бар жүйелердің өнімділігі коммутация ортасының өнімділігіне қатты тәуелді, оны екі параметрмен сипаттауға болады: кідіріс - хабарламаны жіберу кезіндегі кешігу уақыты және өткізу қабілеттілігі - ақпаратты беру жылдамдығы. Мысалы, Cray T3D компьютері үшін бұл параметрлер сәйкесінше 1 мкс және 480 Мб/с, коммутациялық орта ретінде Fast Ethernet желісі пайдаланылатын кластер үшін бұл параметрлер 100 мкс және 10 Мб/с құрайды. Бұл суперкомпьютерлердің өте жоғары құнын ішінара түсіндіреді. Қарастырылып отырған кластер сияқты параметрлермен процессорлардың жеткілікті үлкен санында тиімді шешілетін тапсырмалар көп емес.

Жоғарыда айтылғандардың негізінде біз анықтама береміз: кластер – біртұтас есептеу ресурсы ретінде пайдаланылатын толыққанды компьютерлердің қосылған жиынтығы. Кластер түйіндері ретінде бірдей (біртекті кластерлер) және әртүрлі (гетерогенді кластерлер) компьютерлерді де пайдалануға болады. Өзінің архитектурасы бойынша кластерлік есептеу жүйесі еркін байланысқан. Кластерлерді жасау үшін әдетте қарапайым бір процессорлы дербес компьютерлер немесе екі немесе төрт процессорлы SMP серверлері пайдаланылады. Бұл ретте түйіндердің құрамы мен архитектурасына ешқандай шектеулер қойылмайды. Түйіндердің әрқайсысы өзінің операциялық жүйесімен жұмыс істей алады. Ең жиі қолданылатын стандартты операциялық жүйелер Linux, FreeBSD, Solaris, Tru64 Unix, Windows NT.

Әдебиеттер есептеу жүйесін кластерлеу арқылы қол жеткізілетін төрт артықшылықты атап өтеді:

абсолютті масштабтау;

масштабталатын масштабтау;

жоғары қолжетімділік;

баға/өнімділік арақатынасы.

Кластерлік есептеу жүйесінің жоғарыда аталған мүмкіндіктерінің әрқайсысын түсіндірейік.

Меншік абсолютті масштабтауесептеу қуаты бойынша ең өнімді жалғыз компьютерлерден де асып түсетін үлкен кластерлерді құруға болатынын білдіреді. Кластерде әрқайсысы мультипроцессор болып табылатын ондаған түйіндер болуы мүмкін.

Масштабталатын қасиет кластерді шағын қадамдармен жаңа түйіндерді қосу арқылы өсіруге болатындығын білдіреді. Осылайша, пайдаланушы қажетінше оны кеңейте отырып, шағын жүйеден бастай алады.

Әрбір кластер түйіні тәуелсіз компьютер немесе жүйе болғандықтан, түйіндердің біреуінің істен шығуы кластер өнімділігінің жоғалуына әкелмейді. Көптеген жүйелерде ақауларға төзімділікке бағдарламалық құрал автоматты түрде қолдау көрсетеді.

Ақырында, кластерлік жүйелер суперкомпьютерлер үшін қол жетімсіз мүмкіндіктерді қамтамасыз етеді. баға-сапа арақатынасы... Кез келген өнімділіктің кластерлерін стандартты «құрылымдық блоктарды» пайдаланып, бір кластер құнынан азырақ жасауға болады.

баламалы есептеу қуаты бар түнгі есептеуіш машина.

Осылайша, аппараттық деңгейде кластер желі арқылы қосылған тәуелсіз есептеу жүйелерінің жиынтығы болып табылады. Шешімдер Ethernet жабдығына негізделген қарапайым немесе секундына жүздеген мегабайтты құрайтын жоғары жылдамдықты желілері бар күрделі болуы мүмкін.

Кластердің құрамдас бөлігі бір немесе бірнеше түйіндердің істен шығуы кезінде есептеулерді жүргізу міндеті жүктелген мамандандырылған бағдарламалық қамтамасыз ету болып табылады. Мұндай бағдарламалық қамтамасыз ету бір немесе бірнеше кластер түйіндерінің істен шығуы кезінде есептеу жүктемесін қайта бөледі, сондай-ақ түйінде ақаулық болған жағдайда есептеулерді қалпына келтіреді. Сонымен қатар, кластерде ортақ дискілер болған кезде, кластердің бағдарламалық құралы бір файлдық жүйені қолдайды.

Кластерлік жүйелер архитектураларының классификациясы

Әдебиеттер кластерлік жүйелерді жіктеудің әртүрлі әдістерін сипаттайды. Ең қарапайым жіктеу диск массивтерін пайдалану тәсіліне негізделген: бірге немесе бөлек.

күріште. 5.5.1 және 5.5.2 екі түйіннің кластерлерінің құрылымдарын көрсетеді, оларды үйлестіру хабарламалармен алмасу үшін пайдаланылатын жоғары жылдамдықты желімен қамтамасыз етіледі. Бұл кластерден тыс компьютерлер пайдаланатын жергілікті желі немесе жалға алынған желі болуы мүмкін. Жалға алынған желі жағдайында бір немесе бірнеше кластер түйіндері жергілікті немесе жаһандық желі, ол сервер кластері мен қашықтағы клиенттік жүйелер арасындағы байланысты қамтамасыз етеді.

Ұсынылған кластерлердің айырмашылығы - жергілікті желі жағдайында түйіндер жергілікті диск массивтерін пайдаланады, ал жалға алынған желі жағдайында түйіндер тәуелсіз бір артық массивпен бөліседі. қатты дискілернемесе RAID (тәуелсіз дискілердің артық массиві) деп аталады. RAID контроллермен басқарылатын, жоғары жылдамдықты арналар арқылы өзара байланысқан және қабылданатын бірнеше дискілерден тұрады. сыртқы жүйетұтастай алғанда. Қолданылатын массив түріне байланысты ақауларға төзімділік пен өнімділіктің әртүрлі дәрежелері қамтамасыз етілуі мүмкін.

Орталық Есептеуіш Бөлім

Орталық Есептеуіш Бөлім

Жоғары жылдамдық

Орталық Есептеуіш Бөлім

Орталық Есептеуіш Бөлім

тас жол

Құрылғы

Құрылғы

Құрылғы

Құрылғы

кіріс шығыс

кіріс шығыс

кіріс шығыс

кіріс шығыс

Диск

Диск

Күріш. 5.5.1. Ортақ дискілерсіз кластер конфигурациясы

Диск

Құрылғы

Құрылғы

Орталық Есептеуіш Бөлім

Орталық Есептеуіш Бөлім

кіріс шығыс

кіріс шығыс

Орталық Есептеуіш Бөлім

Орталық Есептеуіш Бөлім

Құрылғы

Құрылғы

Құрылғы

Құрылғы

кіріс шығыс

кіріс шығыс

кіріс шығыс

кіріс шығыс

Диск

Жоғары жылдамдық

Диск

тас жол

Күріш. 5.5.2. Ортақ диск кластерінің конфигурациясы

Диск массаларының ең көп таралған түрлерін қарастырыңыз

RAID0 (сызу) — артықшылығы жоқ екі немесе одан да көп қатты дискілерден тұратын дискілер массиві. Ақпарат деректер блоктарына бөлінеді және бір уақытта екі (бірнеше) дискіге жазылады. Артықшылығы - өнімділіктің айтарлықтай артуы. Кемшілігі мынада: RAID0 сенімділігі жеке дискілердің кез келгенінің сенімділігінен анық төмен және RAID0 құрамына кіретін дискілер санының ұлғаюымен төмендейді, өйткені дискілердің кез келгенінің істен шығуы бүкіл массивтің жұмыс істемеуіне әкеледі. .

RAID1 (айналау) – кемінде екі дискіден тұратын массив. Артықшылықтары – рұқсат етілген жазу жылдамдығы және сұрауларды параллельдеу кезінде оқу жылдамдығының артуы, сондай-ақ жоғары сенімділік: ол массивтегі кем дегенде бір диск жұмыс істеп тұрғанда жұмыс істейді. Бір уақытта екі дискінің істен шығу ықтималдығы әрбір дискінің істен шығу ықтималдығының көбейтіндісіне тең. Іс жүзінде, егер дискілердің біреуі сәтсіз болса, шұғыл әрекет ету керек: артықшылықты қайтадан қалпына келтіріңіз. Ол үшін кез келген RAID деңгейімен (нөлден басқа) ыстық қосалқы бөлшектерді пайдалану ұсынылады. Бұл тәсілдің артықшылығы - тұрақты қолжетімділікті сақтау. Кемшілігі - бір қатты дискінің пайдалы кеңістігін алу үшін екі қатты дискінің құнын төлеу керек.

RAID10 — деректер RAID0 сияқты бірнеше дискілерде дәйекті түрде жазылатын шағылыстырылған массив. Бұл архитектура сегменттері жеке дискілердің орнына RAID1 массивтері болып табылатын RAID0 массиві болып табылады. Тиісінше, осы деңгейдің массивінде кемінде төрт диск болуы керек. RAID10 жоғары ақауларға төзімділік пен өнімділікті біріктіреді.

Кластерлік есептеу жүйелерінің неғұрлым толық көрінісі жүйенің негізгі функционалдық ерекшеліктерін анықтайтын қолданылатын кластерлеу әдістеріне сәйкес кластерлердің жіктелуімен қамтамасыз етіледі:

пассивті артықшылықпен кластерлеу;

белсенді резервтеумен кластерлеу;

тәуелсіз серверлер;

барлық дискілерге қосылған серверлер;

ортақ диск серверлері.

Артық кластерлеу - ең көне және әмбебап әдіс. Серверлердің бірі барлық есептеу жүктемесін алады, ал екіншісі белсенді емес болып қалады, бірақ негізгі сервер сәтсіз болған жағдайда есептеулерді қабылдауға дайын. Белсенді (немесе негізгі) сервер сақтық көшірме (екінші) серверге жүйелі түрде жүрек соғу хабарын жібереді. Негізгі сервердің істен шығуы болып саналатын жүрек соғуы туралы хабарламалар болмаған жағдайда, қосымша сервер қабылдайды. Бұл тәсіл қолжетімділікті жақсартады, бірақ өнімділікті жақсартпайды. Сонымен қатар, егер түйіндер арасындағы жалғыз байланыс хабар алмасу болса және кластердегі екі сервер де дискілерді ортақ пайдаланбаса, күту серверінің негізгі сервер басқаратын дерекқорларға қатынасы болмайды.

Пассивті артықшылық кластерлер үшін сирек кездеседі. «Кластер» термині белсенді қатысатын өзара байланысты түйіндердің жиынтығын білдіреді есептеу процесіжәне бірге бір қуатты есептеуіш машинаның елесін жасайды. Бұл конфигурация әдетте белсенді қосалқы сервері бар жүйе деп аталады және кластерлеудің үш әдісі бар: оқшау серверлер, дискіде ортақ емес серверлер және дискіде ортақ серверлер.

Бірінші әдіс әрбір кластер түйінін өз дискілері бар дербес сервер ретінде қарастырады және жүйедегі дискілердің ешқайсысы ортақ пайдаланылмайды. Схема жоғары өнімділік пен жоғары қолжетімділікті қамтамасыз етеді, бірақ барлық серверлерді теңгерімді және тиімді пайдалануға қол жеткізу үшін клиенттік сұрауларды серверлер бойынша бөлуді жоспарлау үшін арнайы бағдарламалық жасақтаманы қажет етеді. Бағдарламаны орындау кезінде түйіндердің бірі сәтсіз болса, басқа кластер түйіні осы қолданбаны ұстап алып, тоқтата алады. Ол үшін жүйедегі деректер әрбір сервер жүйедегі барлық соңғы деректерге қол жеткізе алатындай етіп үнемі көшіріліп тұруы керек. Осы шығындардың арқасында жоғары қолжетімділік өнімділікті жоғалту есебінен ғана қол жеткізіледі.

Байланыс шығындарын азайту үшін кластерлердің көпшілігі қазір әдетте RAID массивімен ұсынылған ортақ дискілерге қосылған серверлерден тұрады (5.5.2-суретті қараңыз).

Бұл тәсілдің бір нұсқасы дискіні ортақ пайдаланудың қатысы жоқ деп есептейді. Ортақ дискілер бөліктерге бөлінеді және әрбір кластер түйініне бөлім тағайындалады. Түйіндердің бірі сәтсіз болса, кластерді оның ортақ диск бөліміне қатынасу құқықтары басқа түйінге тасымалданатындай етіп қайта конфигурациялауға болады.

Сонымен қатар, кез келген түйін барлық ортақ дискілердегі барлық бөлімдерге қатынаса алатындай, бірнеше серверлер уақыт өте ортақ дискілерге қатынасты бөліседі. Бұл тәсіл кез келген уақытта деректерге серверлердің біреуінің ғана қол жеткізуін қамтамасыз ету үшін қандай да бір құлыптау механизмін қажет етеді.

Кластерлер қамтамасыз етеді жоғары деңгейҚол жетімділік – оларда бір операциялық жүйе және ортақ жады жетіспейді, яғни кэш когеренттілігі мәселесі жоқ. Сонымен қатар, әрбір түйіндегі арнайы бағдарламалық қамтамасыз ету барлық басқа түйіндердің денсаулығын үнемі бақылайды. Бұл басқару әр түйіннің «Мен әлі ояумын» сигналын кезеңді түрде жіберуге негізделген. Егер қандай да бір түйіннен сигнал келмесе, онда мұндай түйін істен шыққан болып саналады; оған енгізу-шығаруды орындау мүмкіндігі берілмейді, оның дискілері және басқа ресурстары (соның ішінде желілік мекенжайлар) басқа түйіндерге қайта тағайындалады, ал ондағы жұмыс істейтін бағдарламалар басқа түйіндерде қайта іске қосылады.

Кластердің өнімділігі шкаласы, сонымен қатар түйіндер қосылады. Кластер бірнеше бөлек қолданбаларды іске қоса алады, бірақ бір қолданбаны масштабтау оның бөліктерінің хабар алмасу арқылы байланысуын талап етеді. Дегенмен, кластерлік түйіндер арасындағы өзара әрекеттесу дәстүрлі есептеу жүйелеріне қарағанда әлдеқайда ұзағырақ болатынын ескермеуге болмайды. Түйіндер санының іс жүзінде шектеусіз масштабталуы және бір операциялық жүйенің болмауы кластерлік архитектураларды өте ауқымды етеді. Жүздеген және мыңдаған түйіндері бар жүйелер сәтті қолданылуда.

Кластерлерді жасау кезінде екі тәсілді бөліп көрсетуге болады. Бірінші әдіс - шағын кластерлік жүйелерді құру. Кластер сыныптағы компьютерлер немесе зертханалық жұмыс станциялары сияқты тәуелсіз блоктар ретінде жұмысын жалғастыратын толық жұмыс істейтін компьютерлерді біріктіреді. Екінші тәсіл – қуатты есептеу ресурстарын мақсатты түрде құру. Компьютерлердің жүйелік блоктары ықшам орналасқан -

Ол арнайы сөрелерде орналасқан және жүйені басқару және тапсырмаларды орындау үшін негізгі компьютерлер деп аталатын бір немесе бірнеше толық мүмкіндіктері бар компьютерлер бөлінген. Бұл жағдайда есептеуіш түйіндердің компьютерлерін графикалық карталармен, мониторлармен, дискілермен және т.б. қамтамасыз етудің қажеті жоқ. перифериялық жабдық, бұл жүйенің құнын айтарлықтай төмендетеді.

Компьютерлерді кластерге біріктіру үшін көптеген технологиялар жасалды. Қазіргі уақытта ең көп қолданылатын технология - Ethernet, оның пайдаланудың қарапайымдылығына және байланыс жабдықтарының төмен құнына байланысты. Дегенмен, мұны әдейі жеткіліксіз бағаммен төлеуге тура келеді.

Коммуникациялық операциялардың үлкен үлесі бар мультипроцессорлық жүйелердегі сызықтық алгебра есептерін шешуге арналған ScaLAPACK ішкі бағдарламалар пакетін әзірлеушілер мультипроцессорлық жүйеге қойылатын талаптарды былай тұжырымдайды: «Екі түйін арасындағы процессор аралық алмасу жылдамдығы, МБ/с, MFLOPS-пен өлшенген есептеу түйінінің 1/10 ең жоғары өнімділігі болуы керек.

Кластер топологиялары

Екі-төрт түйіннен тұратын «кіші» деп аталатын кластерлерге тән топологияларды қарастырайық.

Кластер жұбы топологиясыекі немесе төрт түйінді кластерлерді ұйымдастыру кезінде қолданылады (5.5.3-сурет). Түйіндер жұптарға топтастырылған, дискілік массивтер жұптың екі түйініне де бекітілген және жұптағы әрбір түйін берілген жұптың барлық дискілік массивтеріне қатынаса алады. Жұптың түйіндерінің бірі екіншісі үшін резервтік көшірме ретінде пайдаланылады.

Төрт түйінді кластер жұбы екі түйінді топологияның қарапайым кеңейтімі болып табылады. Екі кластер жұбы әкімшілік және конфигурация тұрғысынан бір бірлік ретінде қарастырылады.

Бұл топология деректердің қолжетімділігі жоғары кластерлерді ұйымдастыру үшін пайдаланылуы мүмкін, бірақ жұпқа жататын сақтау құрылғыларының басқа жұппен физикалық байланысы болмағандықтан, ақауларға төзімділік тек жұп ішінде жүзеге асырылады.

Ауыстыру

кластер

кластер

кластер

кластер

Диск

Диск

Диск

Диск

Күріш. 5.5.3. Кластер жұбы топологиясы

+1 топологиясы екі, үш және төрт түйіннен тұратын кластерлерді құруға мүмкіндік береді (5.5.4-сурет). Әрбір диск массиві тек екі кластер түйініне қосылады. Диск массивтері RAID1 (айналау) схемасына сәйкес ұйымдастырылған. Бір сервер барлық диск массивтеріне қосылған және барлық басқа (негізгі немесе белсенді) түйіндер үшін сақтық көшірме ретінде қызмет етеді. Күту серверін белсенді түйіндердің кез келгенімен бірге жоғары қолжетімділік үшін пайдалануға болады.

Топология деректердің жоғары қолжетімділігімен кластерлеу үшін ұсынылады. Артық болу үшін бір түйінді бөлектеуге болатын конфигурацияларда бұл топология белсенді түйіндердегі жүктемені азайтып, сәтсіз түйіннің жүктемесінің өнімділігін жоғалтпай артық түйінде қайталануын қамтамасыз ете алады. Кез келген негізгі түйіндер мен сақтық көшірме түйіні арасында ақауларға төзімділік қамтамасыз етіледі. Сонымен қатар топология жаһандық ақауларға төзімділікті жүзеге асыруға мүмкіндік бермейді, өйткені кластердің негізгі түйіндері және олардың сақтау жүйелері бір-бірімен қосылмаған.

+ 1 топологиясына ұқсас × топологиясы екі, үш және төрт түйіннен тұратын кластерлерді құруға мүмкіндік береді, бірақ одан айырмашылығы оның икемділігі мен ауқымдылығы жоғары (5.5.5-сурет).

Ауыстыру

кластер

кластер

кластер

кластер

Ауыстыру

кластер

кластер

кластер

кластер

Ауыстыру

Диск

Диск

Диск

Күріш. 5.5.5. Топология ×

Тек осы топологияда барлық кластер түйіндері өз кезегінде RAID1 (айналау) схемасына сәйкес құрастырылған барлық дискілік массивтерге қол жеткізе алады. Топологияның ауқымдылығы жүйедегі қосылымдарды өзгертпей кластерге қосымша түйіндер мен диск массивтерін қосудың қарапайымдылығында көрінеді.

кластер

кластер

кластер

кластер

Диск

Диск

Диск

Диск

Күріш. 5.5.6. Толық бөлінген қол жеткізу топологиясы

Толық бөлінген қол жеткізу топологиясы әрбір диск массивін тек бір кластер түйініне қосуға мүмкіндік береді (Cурет 1). 5.5.6 ). Тек толық бөлінген қол жеткізу архитектурасы бар қолданбалар үшін ұсынылады.

Бақылау сұрақтары

1. Кластерлік есептеу жүйесінің анықтамасын беріңіз.

2. Кластерлік есептеу жүйелерінің негізгі артықшылықтары мен кемшіліктері қандай?

3. Сіз кластерлік есептеу жүйелерінің қандай классификациясына жатасыз

4. Сізге қандай кластер топологиялары таныс? Олардың артықшылықтары мен кемшіліктері қандай?

Әдебиет

1. Көппроцессорлық есептеу жүйелерінің архитектурасы мен топологиясы / А.В. Богданов, В.В. Корхов, В.В. Мареев, Е.Н. Станкова... - М .: INTUIT.RU, 2004 .-- 176 б.

2. Микропроцессорлық жүйелер: оқулық. университеттерге арналған оқулық /

Е.Қ. Александров, Р.И. Грушвицкий, М.С. Куприянов және басқалар; ред. Д.В. Пузанкова ... - СПб .: Политехникалық, 2002 .-- 935 б.

Кластер – жоғары жылдамдықты байланыс арналары арқылы өзара байланысқан және біртұтас бірлескен аппараттық ресурс сияқты көрінетін компьютерлер тобы.

Кластерлік технологияны жасаған алғашқы сәулетшілердің бірі Грегори Пфистер кластердің мағынасын келесі сөздермен анықтады: «Кластер - бөлінген немесе параллель жүйенің сорттарының бірі». Мұндай жүйелер өзара байланысқан бірнеше компьютерлерден тұруы мүмкін немесе олар біртұтас компьютерлік ресурс ретінде пайдаланылуы мүмкін. Қазіргі уақытта кластерлік түйіндерді таңдаудың ең қолайлы нұсқасы Intel процессорларына негізделген операциялық жүйелер болып саналады. Бірқатар себептер бар, оларды қарастыру нәтижелері бойынша кластерлерді құрудың ең оңтайлы нұсқасы оларды қос процессорлы жүйелер негізінде құру болып табылады.

    Кластерлер бірнеше негізгі түрлерге жіктеледі:
  • 1. Жоғары қолжетімді кластерлер.
    Бұл кластерлер берілген кластер көрсететін қызметтің мүмкін болатын ең жоғары қолжетімділігін қамтамасыз ету үшін пайдаланылады. Бір кластер түйіндердің ең көп санын қамтыса, бір немесе бірнеше серверлер істен шыққан сәтте қызмет көрсету кепілдігі бар. Ноутбуктерге қызмет көрсету және жөндеу компаниялары пайдаланушыларға қолжетімділікті жақсарту үшін қажетті түйіндердің ең аз саны екі түйіннен аспауы керек деп кеңес береді. Әртүрлі көп бағдарламалық қамтамасыз етуді әзірлеуосындай кластерлерді құру.
  • 2. Жүктемені теңестіру функциялары бар кластерлер.
    Кластерлердің бұл түрінің жұмыс істеу принципі сұраныстарды бір немесе бірнеше кіру түйіндері арқылы бірден тарату болып табылады, олар өз кезегінде оларды барлық басқа түйіндерге аяқтауға бағыттаумен айналысады. Бірінші кезеңде бұл кластерді әзірлеушілер өнімділікке жауапты болады деп есептеді, бірақ көп жағдайда мұндай кластерлер арнайы әдістермен жабдықталғандықтан, олар сенімділікті арттыру үшін қолданылады. Мұндай құрылымдарды солтүстік шаруашылықтар деп те атайды.
  • 3. Есептеу кластерлері.
    Бұл кластерлер есептеулер кезінде, атап айтқанда мультипроцессорлық кластерлік жүйелерді жасау процесінде жүзеге асырылатын әртүрлі ғылыми зерттеулерді жүргізуде кеңінен қолданылады. Есептеу кластерлері өзгермелі нүкте операциялары кезіндегі процессорлардың жоғары өнімділігімен және өзара қосылатын желілердің төмен кідірісімен ерекшеленеді. Сонымен қатар, кейбір бірегей мүмкіндіктері бар есептеу кластерлері есептеулерге кететін уақытты айтарлықтай қысқартуға ықпал етеді.
  • 4. Бөлінген есептеулер жүйелері.
    Мұндай жүйелер кластерлер болып саналмайды, бірақ олар кластерлерді құру үшін қолданылатын технологиялардың ұқсас принциптерімен ерекшеленеді. Ең бастысы, олардың айырмашылығы - бұл жүйелердің әрбір түйінінің қол жетімділігі өте төмен, яғни оның жемісті жұмысына кепілдік беру мүмкін емес. Сондықтан бұл жағдайда белгілі бір тапсырманы орындау үшін оны бірқатар тәуелсіз процессорлар арасында бөлу керек. Жүйенің бұл түрі, кластерге қарағанда, бір компьютерге ешқандай қатысы жоқ, тек алынған есептеулерді таратудың оңайлатылған әдісін орындауға қызмет етеді. Бұл нұсқадағы тұрақсыз конфигурация көбінесе түйіндердің көптігімен өтеледі.

Алдымен сіз мақаланың кімге арналғанын анықтауыңыз керек, сонда оқырмандар оған уақыт жұмсауға тұрарлық па екенін шеше алады.

Бұл мақаланы жазу қажеттілігі Киевтегі ENTEREX'2002 көрмесінде оқыған семинардан кейін пайда болды. Дәл сол кезде, 2002 жылдың басында мен кластерлік жүйелер тақырыбына қызығушылық бірнеше жыл бұрын байқалғанмен салыстырғанда айтарлықтай өскенін көрдім.

Мен семинарда және осы мақалада кластерлік жүйелердегі нақты қолданбалы есептерді шешу нұсқаларын талдауды мақсат етіп қойған жоқпын, бұл жеке және өте кең тақырып. Мен оқырмандарды кластерлік жүйелерді құрудың терминологиясымен және құралдарымен таныстыру, сондай-ақ кластерлеудің қандай тапсырмалар үшін пайдалы екенін көрсету міндетін қойдым. Күмәншілерді толық сендіру үшін мақалада кластерлік жүйелерді енгізудің нақты мысалдары және менің байланыстарым келтірілген, соған сәйкес мен кластерлік технологияларға қатысты сұрақтарға мүмкіндігінше жауап беруге, сондай-ақ сіздің ескертулеріңіз бен кеңестеріңізді қабылдауға дайынмын.

Кластерлік жүйелер туралы түсінік

Сурет 1. Кластер жүйесі

  • LAN – Жергілікті желі, жергілікті желі
  • SAN - сақтау аймағы желісі

Есептеу жүйелерінің классификациясында алғаш рет «кластер» терминін Digital Equipment Corporation (DEC) анықтады.

DEC анықтамасы бойынша кластер – бұл өзара байланысты және бір ақпаратты өңдеу бірлігі ретінде қызмет ететін компьютерлер тобы.

Кластер бір жүйе ретінде қызмет етеді, яғни пайдаланушы немесе қолданба үшін есептеу техникасының барлық жиынтығы бір компьютер сияқты көрінеді. Бұл кластерлік жүйені құру кезінде ең маңыздысы.

Алғашқы сандық кластерлер VAX машиналарында құрастырылған. Бұл машиналар енді өндірісте емес, бірақ көп жылдар бұрын орнатылған учаскелерде әлі де жұмыс істейді. Және, бәлкім, ең бастысы, олардың дизайнында бекітілген жалпы принциптер бүгінгі күні кластерлік жүйелерді құрудың негізі болып қала береді.

Кластерлік жүйелерге қойылатын жалпы талаптарға мыналар жатады:

  1. Жоғары қолжетімділік
  2. Жоғары өнімділік
  3. Масштабтау
  4. Ресурстарды бөлісу
  5. Қызмет көрсету мүмкіндігі

Әрине, жеке іске асыруда кейбір талаптар бірінші орынға қойылады, ал басқалары екінші жоспарға түседі. Мәселен, мысалы, өнімділігі ең маңызды болып табылатын кластерді енгізу кезінде ресурстарды үнемдеу үшін жоғары қолжетімділікке азырақ назар аударылады.

Жалпы алғанда, кластер мультипроцессорлық жүйе ретінде жұмыс істейді, сондықтан бағдарламалық және аппараттық ресурстарды бөлу шеңберінде мұндай жүйелердің жіктелуін түсіну маңызды.


Сурет 2. Тығыз байланысқан мультипроцессорлық жүйе


Сурет 3. Орташа байланысқан мультипроцессорлық жүйе


Сурет 4. Бос байланысқан мультипроцессорлық жүйе

Әдетте, мен жұмыс істейтін ДК платформалары тығыз байланысқан және қалыпты байланысқан мультипроцессорлық архитектуралардағы кластерлік жүйені іске асыруды пайдаланады.

Жоғары қолжетімді және жоғары өнімді жүйелерге бөлу

В функционалдық классификациякластерлерді жоғары өнімділік (HP), жоғары қолжетімділік (HA) және аралас жүйелер деп санауға болады.

Жоғары жылдамдықты кластерлер айтарлықтай өңдеу қуатын қажет ететін тапсырмалар үшін пайдаланылады. Қолданылатын классикалық аймақтар ұқсас жүйелермыналар:

  • кескінді өңдеу: көрсету, үлгіні тану
  • ғылыми зерттеулер: физика, биоинформатика, биохимия, биофизика
  • өнеркәсіп (геоақпараттық тапсырмалар, математикалық модельдеу)

және басқа да көптеген…

Қолжетімділігі жоғары жүйелер болып табылатын кластерлер, мүмкін болатын үзілістердің құны кластерлік жүйені құруға қажетті шығындардың құнынан асатын жерде қолданылады, мысалы:

  • есеп айырысу жүйелері
  • Банк операциялары
  • электрондық коммерция
  • кәсіпорынды басқару және т.

Аралас жүйелер бұрынғының да, соңғысының да ерекшеліктерін біріктіреді. Оларды орналастыра отырып, жоғары өнімділік және жоғары қолжетімділік параметрлері бар кластердің өнімділігі жоғары жылдамдықты есептеулерге бағытталған жүйеге және мүмкін болатын үзіліс кезінде жоғары қолжетімділікке бағытталған жүйеге жоғалтатыны сөзсіз.

Жоғары өнімділік кластерінің мәселелері


Сурет 5. Жоғары жылдамдықты кластер

Кез келген дерлік параллель бағытталған тапсырмада деректерді бір ішкі тапсырмадан екіншісіне тасымалдауды болдырмау мүмкін емес.

Осылайша, Жоғары өнімділік кластер жүйесінің өнімділігі түйіндердің және олардың арасындағы байланыстардың өнімділігімен анықталады. Сонымен қатар, бұл буындардың жылдамдық параметрлерінің жүйенің жалпы өнімділігіне әсері орындалатын тапсырманың сипатына байланысты. Егер тапсырма ішкі тапсырмалармен жиі деректер алмасуды қажет етсе, онда байланыс интерфейсінің жылдамдығына барынша назар аудару керек. Әрине, параллельді тапсырманың бөліктері бір-бірімен неғұрлым аз әрекеттессе, оны орындауға соғұрлым аз уақыт кетеді. Бұл сонымен қатар параллель тапсырмаларды бағдарламалауға белгілі талаптарды талап етеді.

Ішкі тапсырмалар арасында деректер алмасу қажет болған кездегі негізгі мәселелер орталық процессор мен түйіннің негізгі жады арасындағы деректерді беру жылдамдығының компьютер аралық өзара әрекеттесу жүйелерінің жылдамдық сипаттамаларынан айтарлықтай асып кетуіне байланысты туындайды. Сонымен қатар, әдеттегі SMP жүйелерімен салыстырғанда процессордың кэш жады мен түйін аралық байланыс жылдамдығының айырмашылығы жүйе жұмысының өзгеруіне үлкен әсер етеді.

Интерфейстердің жылдамдығы екі параметрмен сипатталады: үздіксіз деректер ағынының өткізу қабілеті және уақыт бірлігінде берілуі мүмкін ең аз пакеттердің максималды саны. Біз «Жоғары өнімділік кластерлеріне арналған іске асыру құралдары» бөлімінде байланыс интерфейстерін іске асыру нұсқаларын қарастырамыз.

Қол жетімділігі жоғары кластерлік жүйелер мәселелері

Қазіргі әлемде қолжетімділігі жоғары жүйелердің бірнеше түрі кең таралған. Олардың ішінде кластерлік жүйе ең аз шығынмен ақауларға төзімділіктің жоғары деңгейін қамтамасыз ететін технологиялардың іске асуы болып табылады. Кластерлік ақауларға төзімділік барлық маңыздылардың қайталануы арқылы қамтамасыз етіледі маңызды компоненттер... Максималды ақауға төзімді жүйеде бір нүкте, яғни белсенді элемент болмауы керек, оның істен шығуы жүйенің функционалдығын жоғалтуға әкелуі мүмкін. Бұл сипаттама әдетте NSPF (No Single Point of Failure) деп аталады.


Сурет 6. Істен шығу нүктелері жоқ кластерлік жүйе

Қолжетімділігі жоғары жүйелерді құру кезінде басты мақсат ең аз тоқтап тұруды қамтамасыз ету болып табылады.

Жүйенің қолжетімділігі жоғары болуы үшін мыналар қажет:

  • оның құрамдас бөліктері мүмкіндігінше сенімді болуы үшін
  • ол ақауларға төзімді болуы үшін оның сәтсіздікке ұшырау нүктелері болмағаны жөн
  • сондай-ақ күтім жасау оңай және компоненттерді үзіліссіз ауыстыруға мүмкіндік беретін маңызды

Жоғарыда көрсетілген параметрлердің кез келгенін елемеу жүйенің функционалдығын жоғалтуға әкелуі мүмкін.

Барлық үш тармаққа қысқаша тоқталайық.

Максималды сенімділікті қамтамасыз етуге келетін болсақ, ол қалыпты жұмыс жағдайларын, соның ішінде жылуды сақтай отырып, жоғары және өте жоғары интеграцияның электрондық компоненттерін пайдалану арқылы жүзеге асырылады.

Ақауларға төзімділік мамандандырылған құрамдастарды (ECC, Chip Kill жад модульдері, ақауларға төзімді қуат көздері және т.б.) пайдалану, сондай-ақ кластерлік технологияларды қолдану арқылы қамтамасыз етіледі. Кластерлеудің арқасында жұмыс істеудің мұндай схемасына компьютерлердің біреуі істен шыққан жағдайда, тапсырмалар дұрыс жұмыс істейтін кластердің басқа түйіндері арасында қайта бөлінгенде қол жеткізіледі. Сонымен қатар, кластер өндірушілерінің маңызды міндеттерінің бірі бағдарламалық қамтамасыз етуақаулық жағдайында жүйені қалпына келтірудің ең аз уақытын қамтамасыз ету болып табылады, өйткені жүйенің ақауларға төзімділігі жоспарланбаған тоқтау деп аталатын уақытты азайту үшін дәл қажет.

Көптеген адамдар жоспарлы тоқтау уақытын қысқартуға қызмет ететін техникалық қызмет көрсетудің қарапайымдылығын ұмытады (мысалы, істен шыққан жабдықты ауыстыру). критикалық параметрлержоғары қолжетімді жүйелер. Ал егер жүйе бүкіл кешенді өшірмей компоненттерді ауыстыруға мүмкіндік бермесе, онда оның қолжетімділігі төмендейді.

Аралас архитектуралар


Сурет 7. Жоғары жылдамдықты істен шығу кластері

Бүгінгі таңда аралас кластерлік архитектураларды жиі кездестіруге болады, олар әрі қолжетімділігі жоғары жүйелер, әрі қолданбалы тапсырмалар жүйелік түйіндер арасында таратылатын жоғары жылдамдықты кластер архитектуралары болып табылады. Есептеу жүйесін құру кезінде өнімділігі жаңа түйінді қосу арқылы арттырылатын ақауға төзімді кешеннің болуы ең оңтайлы шешім болып саналады. Бірақ мұндай аралас кластерлік архитектураларды құру схемасының өзі біріктіру қажеттілігіне әкеледі үлкен санбір уақытта жоғары өнімділік пен артықшылықты қамтамасыз ететін қымбат компонент. Ал High Performance кластерлік жүйеде ең қымбат компонент жоғары жылдамдықты байланыс жүйесі болғандықтан, оның қайталануы айтарлықтай қаржылық шығындарға әкеледі. Айта кету керек, қолжетімділігі жоғары жүйелер симметриялық мультипроцессорлық жүйелерде оңтайлы орындалатын OLTP тапсырмалары үшін жиі пайдаланылады. Мұндай кластерлік жүйелерді енгізу көбінесе жоғары қолжетімділікке бағытталған 2 түйінді опциялармен шектеледі. Бірақ соңғы уақытта аралас HA / HP кластерлік жүйелерін құру үшін компоненттер ретінде екіден көп қымбат емес жүйелерді пайдалану танымал шешім болды.

Мұны, атап айтқанда, Тіркеу агенттігінің өз бетінде жарияланған ақпараты растайды:

"Oracle корпорациясының төрағасы жақын арада компанияның бизнес-қосымшаларының негізгі бөлігін басқаратын үш Unіx сервері Linux ОЖ-мен жұмыс істейтін Intel процессорларына негізделген серверлер блогына ауыстырылатынын хабарлады. Ларри Эллисон кластерді енгізуді талап етеді. қолданбалармен және дерекқорлармен жұмыс істеу кезінде қолдау, ол шығындарды азайтады және ақауларға төзімділікті арттырады.

Жоғары өнімділікті кластерді іске асыру құралдары

Бүгінгі таңда кластерлік архитектураға негізделген суперкомпьютерлерді құру үшін ең танымал коммуникациялық технологиялар:

Myrinet, Virtual Interface Architecture (Giganet cLAN – алғашқы коммерциялық аппараттық іске асырулардың бірі), SCI (Scalable Coherent Interface), QsNet (Quadrics Supercomputers World), жад арнасы (Compaq Computer және Encore Computer Corp әзірлеген), сондай-ақ ұңғыма -белгілі Fast Ethertnet және Gigabit Ethernet.


Сурет 8. Үздіксіз деректер ағынының берілу жылдамдығы


Сурет 9. Ұзындығы нөлдік пакеттің берілу уақыты

Бұл диаграммалар (8 және 9-суреттер) әртүрлі технологиялардың аппараттық іске асырылуының өнімділігін көруге мүмкіндік береді, бірақ нақты тапсырмаларда және әртүрлі аппараттық платформаларды пайдалану кезінде кідіріс пен деректерді беру жылдамдығы 20-ға дейін алынатынын есте ұстаған жөн. 40%, кейде барлығы 100% мүмкін болатын максималдыдан нашар.

Мысалы, cLAN байланыс карталары үшін MPI кітапханаларын және PCI шинасы бар Intel негізіндегі серверлерді пайдаланған кезде арнаның нақты өткізу қабілеттілігі 80-100 Мбайт/сек, кідіріс шамамен 20 мкс құрайды.

SCI сияқты жоғары жылдамдықты интерфейстерді пайдалану кезінде туындайтын мәселелердің бірі - бұл PCI архитектурасы осы түрдегі жоғары жылдамдықты құрылғылармен жұмыс істеуге жарамсыз. Бірақ егер сіз PCI көпірін бір деректерді тасымалдау құрылғысына назар аудара отырып қайта жасасаңыз, онда бұл мәселе шешіледі. Мұндай енгізулер кейбір өндірушілердің шешімдерінде орын алады, мысалы, SUN Microsystems.

Осылайша, жоғары жылдамдықты кластерлік жүйелерді жобалау және олардың өнімділігін есептеу кезінде кластерлік түйіндердегі деректерді өңдеу және берумен байланысты өнімділік жоғалтуларын ескеру қажет.

Кесте 1. Жоғары жылдамдықты байланыс интерфейстерін салыстыру

ТехнологияӨткізу қабілеті Мбайт/сКешігу μs/пакет8 портқа арналған карта / коммутатор құныПлатформаны қолдауПікір
Жылдам Ethertnet12.5 158 50/200 Linux, UNIX, WindowsТөмен баға, танымал
Gigabit Ethernet125 33 150/3500 Linux, UNIX, WindowsЫңғайлы жаңарту
Миринет245 6 1500/5000 Linux, UNIX, WindowsАшық стандарт, танымал
VI (Giganet cLAN)150 8 800/6500 Linux, WindowsVI бірінші аппараттық өнеркәсіптік енгізу
SCI400 1.5 1200/5000 * Linux, UNIX, WindowsСтандартталған, кеңінен қолданылады
QsNet340 2 Жоқ **True64 UNIXAlphaServer SC және Quadrics жүйелері
Жад арнасы100 3 N / ATrue64 UNIXCompaq AlphaServer арқылы пайдаланылады

* SCI аппараттық құралы (және қолдау көрсететін бағдарламалық құрал) ауыстырғыштарды пайдаланбай MASH деп аталатын топологияларды құруға мүмкіндік береді

** мәлімет жоқ


Сурет 10. Жадқа асимметриялық рұқсаты бар, тығыз байланысқан мультипроцессорлық жүйе

Бір қызықты ерекшелігітөмен кідірістерді қамтамасыз ететін коммуникациялық интерфейстер олардың негізінде NUMA архитектурасы бар жүйелерді, сондай-ақ бағдарламалық жасақтама деңгейінде мультипроцессорлық SMP жүйелерін имитациялай алатын жүйелерді құруға болады. Мұндай жүйенің артықшылығы мынада: стандартты операциялық жүйелерді және SMP шешімдерінде қолдануға арналған бағдарламалық қамтамасыз етуді пайдалануға болады, бірақ процессор аралық байланыстың жоғары кідірісіне байланысты, SMP-мен салыстырғанда бірнеше есе жоғары, мұндай жүйенің өнімділігін болжау мүмкін емес.

Параллельдеу құралдары

Параллельді есептеу жүйелерін бағдарламалаудың бірнеше түрлі тәсілдері бар:

  • Процессор аралық байланысты ұйымдастыруға арналған коммуникациялық кітапханалар мен интерфейстерді қолданатын стандартты кеңінен қолданылатын бағдарламалау тілдерінде (PVM, MPI, HPVM, MPL, OpenMP, ShMem)
  • параллельді бағдарламалаудың мамандандырылған тілдерін және параллель кеңейтімдерді пайдалану (Fortran және C / C ++, ADA, Modula-3 параллельді енгізулері)
  • жүйелік бағдарламаларды автоматты және жартылай автоматты параллельдеу құралдарын пайдалану (BERT 77, FORGE, KAP, PIPS, VAST)
  • белгілі бір салалардағы мәселелерді шешуге бағытталған мамандандырылған кітапханалардың параллельді процедураларын қолдана отырып стандартты тілдерде бағдарламалау, мысалы: сызықтық алгебра, Монте-Карло әдістері, генетикалық алгоритмдер, кескіндерді өңдеу, молекулалық химия және т.б. (ATLAS, DOUG, GALOPPS, NAMD, ScaLAPACK).

Сондай-ақ көп құралдарпараллельді бағдарламаларды жобалауды жеңілдетеді. Мысалы:

  • КОД- Параллельді программаларды құрудың графикалық жүйесі. Параллельді бағдарлама төбелері программаның тізбекті бөліктері болып табылатын график түрінде бейнеленген. PVM және MPI кітапханалары хабарламаларды тасымалдау үшін пайдаланылады.
  • TRAPPER- Германияның Genias компаниясының коммерциялық өнімі. Параллель бағдарламалық құралды құруға арналған құрамдастарды қамтитын графикалық бағдарламалау ортасы.

Жоғары жылдамдықты кластерлік жүйелерді пайдаланушылардың тәжірибесіне сәйкес, процессор аралық байланыстың қажеттілігін ескере отырып арнайы жазылған бағдарламалар ең тиімді жұмыс істейді. Ортақ жад интерфейсін немесе автоматты параллелизация құралдарын пайдаланатын пакеттерде бағдарламалау әлдеқайда ыңғайлы болғанына қарамастан, MPI және PVM кітапханалары бүгінгі күні кең таралған.

MPI (The Message Passing Interface) кең танымалдылығын ескере отырып, мен сізге бұл туралы аздап айтқым келеді.

«Хабарларды жіберу интерфейсі» - параллельді бағдарламаларды құру үшін пайдаланылатын және хабар алмасу үлгісін пайдаланатын стандарт. C / C ++ және Fortran үшін MPI іске асырулары өте кең таралған суперкомпьютерлік платформаларға арналған тегін және коммерциялық нұсқаларында, соның ішінде Unix, Linux және Windows түйіндерінде құрылған Жоғары өнімділік кластерлік жүйелер бар. MPI форумы () MPI стандартына жауап береді. В жаңа нұсқасыстандарт 2.0 параллельді бағдарламалардың жұмыс істеуін ұйымдастырудың көптеген жаңа қызықты механизмдері мен процедураларын сипаттайды: динамикалық процесті басқару, бір жақты байланыстар (Put / Get), параллель енгізу/шығару. Өкінішке орай, кейбір инновациялар қазірдің өзінде белсенді түрде қолданылуда, дегенмен стандарттың осы нұсқасының толық дайын енгізілімдері әлі жоқ.

MPI функционалдығын бағалау үшін мен сіздердің назарларыңызға кластердегі тартылған процессорлар санына байланысты сызықтық теңдеулер жүйесін шешу есебінің есептеу уақытының тәуелділігінің графигін ұсынғым келеді. Кластер Intel процессорлары мен SCI (Scalable Coherent Interface) негізінде құрылған. Әрине, мәселе ерекше және қажетті жүйенің өнімділігін болжаудың жалпы үлгісі ретінде алынған нәтижелерді түсіну қажет емес.


Сурет 11. Кластердегі тартылған процессорлар санына байланысты сызықтық теңдеулер жүйесін шешу есебінің есептеу уақытының тәуелділігі.

Графикте екі қисық көрсетілген, көк – сызықтық үдеу және қызыл – тәжірибе нәтижесінде алынған. Яғни, әрбір жаңа түйінді пайдалану нәтижесінде біз сызықтыдан жоғары үдеу аламыз. Эксперимент авторы мұндай нәтижелер кэш-жадыны тиімдірек пайдаланудың арқасында алынғанын мәлімдейді, бұл әбден қисынды және түсінікті. Егер кімде-кім осы мәселе бойынша ойлары мен идеялары болса, оларды бөліссеңіз, мен ризамын (менің электрондық поштам: [электрондық пошта қорғалған]).

Қол жетімділігі жоғары кластерді іске асыру құралдары

Қол жетімділігі жоғары кластерлерді келесіге бөлуге болады:

  • Ештеңені бөліспеген архитектура
  • Ортақ дискінің архитектурасы


Сурет 12. Ортақ ресурс архитектурасы

Ресурссыз архитектура ортақ жадты пайдаланбайды. Оны пайдаланған кезде әрбір түйінде кластерлік жүйенің түйіндері ортақ пайдаланбайтын өзінің диск жетектері болады. Шын мәнінде, аппараттық деңгейде тек байланыс арналары бөлінеді.


Сурет 13. Ортақ дискінің архитектурасы

Ортақ дискінің архитектурасы дәстүрлі түрде деректердің үлкен көлемін өңдеуге бағытталған қол жетімділігі жоғары кластерлік жүйелерді құру үшін қолданылады. Мұндай жүйе ортақ сақтау жүйесінен және ортақ деректерге қол жеткізуді тарататын кластер түйіндерінен тұрады. Сағат жоғары қуатсақтау жүйелерінде, оларды өңдеуге бағытталған тапсырмалармен жұмыс істегенде, ортақ дискілері бар архитектура тиімдірек. Бұл жағдайда деректердің бірнеше көшірмелерін сақтаудың қажеті жоқ және бір уақытта түйін сәтсіз болса, тапсырмалар басқа түйіндерге бірден қол жетімді болуы мүмкін.

Егер тапсырма сұраулардың белгілі бір жиынынан сұрау деректердің бір бөлігін пайдаланып өңделуі үшін деректерді логикалық түрде бөле алса, ресурстарды ортақ пайдаланбайтын жүйе тиімдірек шешім болуы мүмкін.

Менің ойымша, гетерогенді кластерлік жүйелерді құру мүмкіндігі қызықты. Мысалы, Tivoli Sanergy бағдарламалық құралы деректерге қол жеткізу гетерогенді түйіндер арасында ортақ пайдалануға болатын жүйелерді құруға мүмкіндік береді. Мұндай шешім қажетті шешімдер ауқымы бір платформада жоқ немесе қажет аппараттық және бағдарламалық ресурстардың қалыптасқан паркі бар ұйымдағы бейне ақпаратты немесе басқа деректерді ұжымдық өңдеу жүйелерінде өте пайдалы болуы мүмкін. тиімдірек пайдалану үшін.


Сурет 14. Гетерогенді кластерлік жүйе

Бүгінгі таңда ең танымал коммерциялық жүйелер екі түйінді ауыстырып қосу кластерлері болып табылады. Бағдарламалық қамтамасыз ету ресурстарын бөлуге қатысты ақауларға төзімді кластерлік жүйелерді енгізу үшін Белсенді-Белсенді және Белсенді-Пассивті (Актив-Пассивті) модельдерді ажыратыңыз.


Сурет 15. Белсенді-белсенді модель

Белсенді-белсенді модельде ақауларға төзімді шешіммен бірге біз іс жүзінде жоғары жылдамдықты шешім аламыз, өйткені бір тапсырма бір уақытта бірнеше серверлерде жұмыс істейді. Бұл опция, мысалы, Oracle Prallel Server, MS SQL 2000, IBM DB2 жүйесінде жүзеге асырылады. Яғни, мұндай модельді іске асыру кластерлік режимде жұмыс істеуге бағытталған қолданбалы бағдарламалық жасақтаманы жазу жағдайында ғана мүмкін болады (ерекшелік ортақ жады бар кластерлік жүйелер). Active-Active моделінде, әрине, бағдарламалық қамтамасыз ету түйіндердің қажетті санын қолдайтын болса, жаңа түйінді қосу арқылы тапсырманың жылдамдығын масштабтауға болады. Мысалы, Oracle Parallel Server 8.0.5 2-6 түйіннен тұратын кластерді қолдайды.


Сурет 16. 3 түйіндегі Белсенді-белсенді кластер

Көбінесе пайдаланушылар дайын бағдарламалық шешімдердің ақауларға төзімді жұмысын қамтамасыз ету қажет болғанда мұндай мәселеге тап болады. Өкінішке орай, бұл жағдайда Active-Active үлгісі жұмыс істемейді. Мұндай жағдайлар үшін сәтсіз түйінде орындалған тапсырмаларды басқа түйіндерге көшіру қамтамасыз етілген үлгі қолданылады. Осылайша, біз Белсенді-Пассивті іске асыруды аламыз.


Сурет 17. Белсенді-пассивті модель

Көптеген жағдайларда жауапкершілік салаларын бөлу арқылы бір тапсырманы бірнешеге бөлуге болатынын, сондай-ақ жалпы жағдайда кәсіпорын көптеген әртүрлі тапсырмаларды орындауы қажет екенін ескере отырып, жалған Белсенді-белсенді кластер жүйесінің моделі деп аталады. жүзеге асырылады.


Сурет 18. 3 түйіндегі псевдоактивті-белсенді кластер

Егер сізге бірнеше бағдарламалық ресурстардың ақауларға төзімді жұмысын қамтамасыз ету қажет болса, жүйеге жаңа түйінді қосып, кластерде қажетті тапсырмаларды бастау жеткілікті, олар осы түйін істен шыққан жағдайда орындалады. басқа түйінге ауыстырылады. Мұндай модель MSCS (Microsoft Cluster Service) және Linux Failover Cluster үлгілерінде 2-ден 4 түйінге дейін кластерлеуді қолдайтын Caldera OpenUnix және Unixware операциялық жүйелеріне арналған ReliantHA бағдарламалық құралында жүзеге асырылады.

Ақауларға төзімді кластерлік жүйелердегі байланыс жүйесі жоғары жылдамдықты кластерлердегі сияқты аппараттық құралда құрылуы мүмкін. Бірақ ортақ дискі бар архитектура жағдайында жоғары жылдамдықты қол жеткізуді қамтамасыз ету қажет болады ортақ жүйедеректерді сақтау. Бүгінгі күні бұл мәселенің көптеген шешімдері бар.

Ең қарапайым 2 түйінді модель пайдаланылса, дискілерге қол жеткізу олардың ортақ SCSI шинасына тікелей қосылу арқылы құрылуы мүмкін,


Сурет 19. Ортақ SCSI шинасы бар архитектура

немесе біріктірілген SCSI - SCSI контроллері бар оқшау дискінің ішкі жүйесін пайдалану. Соңғы жағдайда дискілер дискілік ішкі жүйенің ішкі тәуелсіз арналарына қосылады.


20-сурет. SCSI-ден SCSI дискінің ішкі жүйесін пайдаланатын опция

SCSI-ден SCSI дискінің ішкі жүйесін пайдаланатын опция масштабталатын, функционалды және қателерге төзімді. Түйін мен дискілер арасында басқа көпір пайда болғанына қарамастан, мұндай жүйенің жылдамдығы әдетте жоғарырақ, өйткені біз дискіге теру мүмкіндігін аламыз (жағдай жергілікті желіде концентратор мен коммутаторды пайдалану сияқты. ). Ортақ SCSI шинасындағы дискілерге ортақ қол жетімділік опциясынан айырмашылығы, бөлек тәуелсіз дискілік ішкі жүйеде ақаулық нүктелері жоқ жүйелерді құрудың ыңғайлы мүмкіндігі және көп түйінді конфигурацияларды құру мүмкіндігі бар.

Жақында SCSI протоколының жаңа сериялық интерфейсі FC (талшықты арна) танымал бола бастады. Сақтау аймағының желілері (SAN) деп аталатындар FC негізінде құрылған.


21-сурет Fiber Channel SAN пайдаланатын кластерлік жүйе

Fiber Channel негізгі артықшылықтары оның барлық дерлік мүмкіндіктерін қамтиды.

  • Деректерді тасымалдаудың жоғары жылдамдығы
  • Хаттаманың тәуелсіздігі (0-3 деңгей)
  • Нүктелер арасындағы үлкен қашықтық
  • Қысқа пакеттерді жіберу үшін төмен кідіріс
  • Мәліметтерді тасымалдаудың жоғары сенімділігі
  • Іс жүзінде шектеусіз масштабтау мүмкіндігі
  • Көп нүктелі топологиялар

Fiber Channel-тың бұл тамаша мүмкіндіктері оның дизайнына арна және желі интерфейстері саласындағы сарапшылар қатысқан және екеуінің де оң мүмкіндіктерін бір FC интерфейсінде біріктіре алғандығына байланысты.

FC маңыздылығын түсіну үшін мен FC және параллель SCSI интерфейсінің салыстыру кестесін беремін.

Кесте 2. FC және параллель SCSI интерфейсінің салыстыру кестесі

Бүгінгі күні FC құрылғылары параллельді SCSI құрылғыларына қарағанда қымбатырақ, бірақ соңғы уақытта баға айырмашылығы күрт төмендеді. Дискілер мен сақтау жүйелері құны бойынша SCSI параллельді енгізуімен дерлік бірдей; тек FC адаптерлері құнның айтарлықтай айырмашылығын қамтамасыз етеді.

Кластер архитектурасын жүзеге асырудың тағы бір өте қызықты нұсқасы бар - ортақ жады бар кластерлік жүйе (оның ішінде RAM) Shared Memory Cluster. Шындығында, бұл кластер қалыпты байланысқан мультипроцессорлық жүйенің үлгісінде де, тығыз байланысқанда да жұмыс істей алады. Мұндай жүйе, мақаланың басында айтылғандай, NUMA деп аталады.


Сурет 22. Ортақ жад кластерінің үлгісі

Ортақ жад кластері, тіпті кластер операциялық жүйе оны сәйкес көретін ресурстарды бөлусіз архитектура ретінде құрастырылған болса да, бір жүйе кескінін қамтамасыз ететін бағдарламалық құралды (кластер қызметтері) пайдаланады.

Кластерлік жүйелердің жоғары қолжетімділігі туралы әңгіменің соңында әртүрлі жүйелердің тоқтап қалуы туралы статистиканы бергім келеді.


Сурет 23. Әртүрлі жүйелердің орташа тоқтау уақытын салыстыру

Орташа алынған деректер де, алынған деректер де берілген жарнамалық материалдарөндіруші компаниялардың бірі, сондықтан оларды белгілі бір дәрежеде сыни тұрғыдан қабылдау керек. Дегенмен, олар сипаттайтын жалпы сурет өте дұрыс.

Көріп отырғаныңыздай, қол жетімділігі жоғары кластерлік жүйелер бос уақытты азайту үшін панацея емес. Жүйенің тоқтап қалу уақыты өте маңызды болса, ақауларға төзімділік немесе Үздіксіз қолжетімділік класының жүйелерін пайдалану керек, бұл сыныптағы жүйелер Жоғары қолжетімділік класындағы жүйелерге қарағанда қол жетімділік дәрежесі жоғары болады.

Дәлелденген шешімдердің мысалдары

Өйткені кез келген технологияның жетістігі оның мысалдарымен дәлелденеді практикалық қолдану, Мен бірнеше маңызды, менің ойымша, кластерлік шешімдерді жүзеге асырудың нақты нұсқаларын көрсеткім келеді.

Біріншіден, жоғары жылдамдықты кластерлер туралы.

Ең пайдалы мысалдардың бірі, менің ойымша, әлемдегі ең қуатты суперкомпьютерлер тізімінің 18-ші басылымында бірінші орындарды және шын мәнінде көптеген орындарды IBM SP2 және Compaq AlphaServer SC жүйелері алады. Екі жүйе де жоғары өнімді кластерлік шешімдерге құрылымы жағынан ұқсас жаппай параллельді есептеу жүйелері (MPP) болып табылады.

IBM SP2 SP Switch2 арқылы қосылған түйіндер ретінде RS / 6000 машиналарын пайдаланады. Коммутатордың өткізу қабілеті бір бағытта 500 МБ/с, кідіріс 2,5 мкс.

Compaq AlphaServer SC. Түйіндер – QsNet байланыс интерфейсі арқылы қосылған, параметрлері жоғарыда аталған Compaq AlphaServer ES45 типті 4 процессорлы жүйелер.

Дәл сол суперкомпьютер тізімінде кәдімгі Intel платформаларында және SCI және Myrinet коммутаторларында, тіпті әдеттегі Fast және Gigabit Ethernet-те құрастырылған машиналар бар. Сонымен қатар, алғашқы екі нұсқада да, қарапайым жабдыққа салынған жоғары жылдамдықты кластерлік жүйелерде де MPI пакеттері бағдарламалау үшін қолданылады.

Соңында мен ауқымды жоғары қолжетімді кластерлік жүйенің әдемі мысалын келтіргім келеді. IBM DB/2 дерекқорын қатеге төзімді жоғары жылдамдықпен өңдеуге арналған кластерлік шешімнің аппараттық моделі.


Сурет 24. IBM DB2 кластері

Бар болғаны. Егер кімде-кім қандай да бір сұрақтары, кеңестері немесе сөйлескісі келетіні болса, қош келдіңіз. Сіз менің координаттарымды мақаланың соңында таба аласыз.

Әдебиет

  • «Параллельдік архитектуралардың өлшемін арттыру» - Грег Пфистер, IBM компаниясының аға техникалық маманы.
  • «Windows үшін ақауларға төзімділік мүмкін бе?» - Наталья Пирогова, Open Systems баспасының материалдары.
  • «Бос байланысқан кластердегі тапсырмаларды параллельдеу жүйелерін пайдалану», - Иванов М.Н.
  • «Стратус ақауларына төзімді компьютерлер» - Виктор Шнитман, Open Systems баспасы.
  • «Қазіргі заманғы жоғары өнімді компьютерлер», - В.Шнитман, Орталықтың ақпараттық-аналитикалық материалдары Ақпараттық технологиялар.
  • «Сақтау желілеріне қадам», YUSTAR компаниясының ақпараттық-аналитикалық материалдары.
  • «Виртуалды интерфейс архитектурасының эволюциясы» - Торстен фон Айкен, Вернер Фогельс, Open Systems баспасы.
  • «ММУ ғылыми-есептеу орталығы» параллельді ақпараттық технологиялар зертханасының материалдары.
  • Кластерлік есептеу ақпарат орталығының материалдары.
  • SCI Europe материалдары.
  • VI форум материалдары (Виртуалды сәулет әзірлеушілер форумы).
  • Кальдера материалдары.
  • Дельфиндік материалдар.
  • Emulex компаниясының материалдары.
  • Intel Americas, Inc бөлімшесі KAI Software материалдары. (ҚАИ).
  • Myricom, Inc. материалдары.
  • Oracle компаниясының материалдары.
  • Ұсыныстар техникалық көмек Intel корпорациясы.

(Айтпақшы, бұл жағдайда xbox 360 немесе PS3-тен арзан және тиімді кластерді жинауға болады, ондағы процессорлар Power сияқты шамамен бірдей және сіз миллионға бірнеше приставкаларды сатып ала аласыз. .)

Осыған сүйене отырып, біз баға бойынша жоғары өнімді жүйені құрудың қызықты нұсқаларын атап өтеміз. Ол, әрине, көп процессорлы болуы керек. Мұндай тапсырмалар үшін Intel Xeon процессорларын пайдаланады, AMD Opteron процессорларын пайдаланады.

Ақша көп болса


Біз розеткадағы өте қымбат, бірақ өнімді процессорлар желісін бөлек атап өтеміз Intel Xeon LGA1567.
Бұл сериядағы ең жақсы процессор - 2,4 ГГц он ядросы бар E7-8870. Оның бағасы 4616 долларды құрайды. Мұндай процессорлар үшін HP және Supermicro шығарылады! сегіз процессор! сервер шассиі. HyperThreading қолдауы бар сегіз 10 ядролы Xeon E7-8870 2,4 ГГц процессоры 8 * 10 * 2 = 160 ағынды қолдайды, ол Windows тапсырмалар менеджерінде 10x16 матрицасында жүз алпыс процессор жүктемесі графигі ретінде көрсетіледі.

Сегіз процессордың корпусқа кіруі үшін олар бірден аналық платаға емес, аналық платаға жабысып қалған бөлек тақталарға орналастырылады. Фотосуретте аналық платада орнатылған процессорлары бар төрт тақта (әрқайсысында екі) көрсетілген. Бұл Supermicro шешімі. HP шешімінде әр процессор үшін әртүрлі тақта бар. HP шешімінің құны процессорлармен, жадпен және басқалармен толтыруға байланысты екі-үш миллионға дейін. Supermicro шассиі 10 000 доллар тұрады, бұл тартымдырақ. Сонымен қатар, Supermicro PCI-Express x16 порттарына төрт сопроцессорлық кеңейту картасын қоя алады (айтпақшы, олардың кластерін жинау үшін Infiniband адаптеріне әлі де орын болады), ал HP-де тек екеуі бар. Осылайша, Supermicro компаниясының сегіз процессорлы платформасы суперкомпьютерді жасау үшін тартымдырақ. Көрмедегі келесі фотосуретте төрт GPU тақтасы бар суперкомпьютер жинақталған.


Дегенмен, бұл өте қымбат.
Не арзанырақ
Бірақ суперкомпьютерді неғұрлым қолжетімді AMD Opteron G34, Intel Xeon LGA2011 және LGA 1366 процессорларында құрастыру перспективасы бар.

Белгілі бір үлгіні таңдау үшін мен әр процессор үшін баға / (ядролар саны * жиілік) қатынасын есептеген кестені жасадым. Мен есептеуден 2 ГГц-тен төмен процессорларды тастадым, ал Intel үшін - 6,4 ГТ/с төмен автобуспен.

Үлгі
Ядролар саны
Жиілік
Бағасы, $
Бағасы/өзегі, $
Баға / Негізгі / ГГц
AMD





6386 SE
16
2,8
1392
87
31
6380
16
2,5
1088
68
27
6378
16
2,4
867
54
23
6376
16
2,3
703
44
19
6348
12
2,8
575
48
17
6344
12
2,6
415
35
13
6328
8
3,2
575
72
22
6320
8
2,8
293
37
13
INTEL





E5-2690
8
2,9
2057
257
89
E5-2680
8
2,7
1723
215
80
E5-2670
8
2,6
1552
194
75
E5-2665
8
2,4
1440
180
75
E5-2660
8
2,2
1329
166
76
E5-2650
8
2
1107
138
69
E5-2687W
8
3,1
1885
236
76
E5-4650L
8
2,6
3616
452
174
E5-4650
8
2,7
3616
452
167
E5-4640
8
2,4
2725
341
142
E5-4617
6
2,9
1611
269
93
E5-4610
6
2,4
1219
203
85
E5-2640
6
2,5
885
148
59
E5-2630
6
2,3
612
102
44
E5-2667
6
2,9
1552
259
89
X5690
6
3,46
1663
277
80
X5680
6
3,33
1663
277
83
X5675
6
3,06
1440
240
78
X5670
6
2,93
1440
240
82
X5660
6
2,8
1219
203
73
X5650
6
2,66
996
166
62
E5-4607
6
2,2
885
148
67
X5687
4
3,6
1663
416
115
X5677
4
3,46
1663
416
120
X5672
4
3,2
1440
360
113
X5667
4
3,06
1440
360
118
E5-2643
4
3,3
885
221
67

Ең аз арақатынасы бар модель қалың курсивпен бөлектелген, ең қуатты AMD және менің ойымша, Xeon-ға ең жақын өнімділігінің асты сызылған.

Сондықтан суперкомпьютерге арналған процессорларды таңдауым - Opteron 6386 SE, Opteron 6344, Xeon E5-2687W және Xeon E5-2630.

аналық платалар

PICMG
Кәдімгі аналық платаларда төрттен көп қос ұялы кеңейту карталарын жеткізу мүмкін емес. Сондай-ақ тағы бір архитектура бар - BPG8032 сияқты көлденең тақталарды пайдалану PCI ExpressАртқы панель.


Мұндай тақтада PCI Express кеңейту карталары және жоғарыда талқыланған сегіз процессорлы Supermicro негізіндегі серверлерде орнатылғандарға ұқсас бір процессор тақтасы бар. Бірақ тек осы процессорлық тақталар PICMG салалық стандарттарына бағынады. Стандарттар баяу дамиды және мұндай тақталар көбінесе соңғы процессорларды қолдамайды. Мұндай процессорлық тақталардың көбі қазір екі Xeon E5-2448L - Trenton BXT7059 SBC үшін шығарылады.

Мұндай жүйе GPUсіз 5000 доллардан кем емес тұрады.

TYAN дайын платформалары
Шамамен бірдей сомаға TYAN FT72B7015 суперкомпьютерлерін жинауға арналған дайын платформаны сатып алуға болады. Мұндайда сегізге дейін GPU және екі Xeon LGA1366 орнатуға болады.
«Тұрақты» сервердің аналық платалары
LGA2011 үшін
Supermicro X9QR7-TF - Бұл аналық плата 4 кеңейту картасын және 4 процессорды қабылдайды.

Supermicro X9DRG-QF - Бұл тақта жоғары өнімді жүйелерді құру үшін арнайы жасалған.

Opteron үшін
Supermicro H8QGL-6F - Бұл тақта төрт процессорды және үш кеңейту картасын қолдайды

Платформаны кеңейту карталарымен нығайту

Бұл нарықты NVidia толығымен дерлік басып алды, ол ойын бейне карталарынан басқа есептеу карталарын шығарады. AMD нарықтық үлесі азырақ және салыстырмалы түрде жақында Intel бұл нарыққа шықты.

Мұндай сопроцессорлардың ерекшелігі бортында оперативті жадтың үлкен көлемінің болуы, екі есе дәлдікпен жылдам есептеулер және энергия тиімділігі болып табылады.

FP32, Tflops FP64, Tflops Бағасы Жад, ГБ
Nvidia Tesla K20X 3.95 1.31 5.5 6
AMD FirePro S10000 5.91 1.48 3.6 6
Intel Xeon Phi 5110P 1 2.7 8
Nvidia GTX Titan 4.5 1.3 1.1 6
Nvidia GTX 680 3 0.13 0.5 2
AMD HD 7970 ГГц шығарылымы 4 1 0.5 3
AMD HD 7990 Devil 13 2х3,7 2x0,92 1.6 2х3

Nvidia компаниясының ең жақсы шешімі Kepler архитектурасына негізделген Tesla K20X деп аталады. Бұл әлемдегі ең қуатты суперкомпьютер Титанның карталары. Дегенмен, Nvidia жақында Geforce Titan графикалық картасын шығарды. Ескі үлгілерде FP64 өнімділігі FP32 (GTX680) 1/24 дейін төмендетілді. Бірақ Титанда өндіруші екі есе дәлдіктегі есептеулерде айтарлықтай жоғары өнімділікті уәде етеді. AMD шешімдері де жаман емес, бірақ олар басқа архитектураға негізделген және бұл CUDA (Nvidia технологиясы) үшін оңтайландырылған есептеулерді орындауды қиындатады.

Intel шешімі - Xeon Phi 5110P қызықты, өйткені сопроцессордағы барлық ядролар x86 архитектурасында орындалады және есептеулерді орындау үшін кодты арнайы оңтайландыру қажет емес. Бірақ менің сопроцессорлар арасындағы ең сүйікті нұсқасы - салыстырмалы түрде арзан AMD HD 7970 GHz Edition. Теориялық тұрғыдан бұл графикалық карта құны үшін максималды өнімділікті көрсетеді.

Кластерге қосылуға болады

Жүйе өнімділігін жақсарту үшін бірнеше компьютерді кластерге біріктіруге болады, олар есептеу жүктемесін кластердің бөлігі болып табылатын компьютерлер арасында таратады.

Кәдімгі Gigabit Ethernet желісін компьютерлерді қосу үшін желілік интерфейс ретінде пайдалану өте баяу. Осы мақсаттар үшін Infiniband жиі пайдаланылады. Infiniband хост адаптері серверге қарағанда арзан. Мысалы, халықаралық Ebay аукционында мұндай адаптерлер 40 долларға сатылады. Мысалы, X4 DDR (20 Гб/с) адаптері Ресейге жеткізіліммен шамамен 100 доллар тұрады.

Сонымен қатар, Infiniband үшін коммутация жабдығы айтарлықтай қымбатқа түседі. Және жоғарыда айтылғандай, топология ретінде классикалық жұлдыз компьютерлік желі- ең жақсы таңдау емес.

Дегенмен, InfiniBand хосттары бір-біріне қосқышсыз тікелей қосылуы мүмкін. Содан кейін, мысалы, бұл опция өте қызықты болады: шексіз жолақ арқылы қосылған екі компьютердің кластері. Мұндай суперкомпьютерді үйде оңай жинауға болады.

Сізге қанша видеокарта қажет

Біздің заманымыздың ең қуатты суперкомпьютері Cray Titan-да процессорлардың «бейне картаға» қатынасы 1: 1 құрайды, яғни оның 16 ядролы 18688 процессоры және 18688 Tesla K20X бар.

Ксеондарға негізделген қытайлық суперкомпьютер Tianhe-1A-да көзқарас келесідей. Бір Nvidia M2050 үшін екі алты ядролы процессор (K20X қарағанда әлсіз).

Біз өзіміздің жиналыстарымызға бұл қатынасты оңтайлы деп қабылдаймыз (өйткені ол арзанырақ). Яғни GPU үшін 12-16 процессор өзегі. Төмендегі кестеде іс жүзінде мүмкін болатын нұсқалар қою шрифтпен көрсетілген және менің көзқарасым бойынша ең сәтті нұсқалардың асты сызылған.

GPU Өзектер 6 ядролы процессор 8 ядролы процессор 12 ядролы процессор 16 ядролы процессор
2 24 32 4
5
3
4
2
3
2
2
3 36 48 6
8
5
6
3
4
2
3
4 48 64 8
11
6
8
4
5
3
4

Егер процессорлардың/бейнекарталардың бұрыннан қалыптасқан қатынасы бар жүйе қосымша қосымша есептеуіш құрылғыларды ала алатын болса, онда біз оларды жинақтау қуатын арттыру үшін қосамыз.

Сонымен қанша тұрады

Төмендегі опциялар - жедел жады, қатты дискілері және бағдарламалық жасақтамасы жоқ суперкомпьютер шассиі. Барлық модельдер AMD HD 7970 GHz Edition бейне адаптерін пайдаланады. Оны тапсырманың сұрауы бойынша басқасымен ауыстыруға болады (мысалы, xeon phi бойынша). Жүйе рұқсат етсе, AMD HD 7970 ГГц шығарылымдарының бірі үш ұялы AMD HD 7990 Devil 13 нұсқасына ауыстырылды.
Supermicro H8QGL-6F аналық платасындағы 1-нұсқа


Аналық плата Супермикро H8QGL-6F 1 1200 1200
Орталық Есептеуіш Бөлім AMD Opteron 6344 4 500 2000
CPU салқындатқышы Thermaltake CLS0017 4 40 160
Қорап 1400 Вт SC748TQ-R1400B 1 1000 1000
Графикалық үдеткіш AMD HD 7970 ГГц шығарылымы 3 500 1500
5860

Теориялық тұрғыдан өнімділік шамамен 12 Tflops болады.
TYAN S8232 аналық платасындағы 2-нұсқа, кластер


Бұл тақта Opteron 63xx қолдамайды, сондықтан 62xx пайдаланылады. Бұл нұсқада екі компьютер Infiniband x4 DDR арқылы екі кабель арқылы кластерге қосылған. Теориялық тұрғыдан, бұл жағдайда қосылу жылдамдығы PCIe x8 жылдамдығымен шектеледі, яғни 32 Гб/с. Екі қуат көзі пайдаланылады. Оларды бір-бірімен қалай татуластыруға болатынын Интернеттен табуға болады.
Саны Бағасы сомасы
Аналық плата TYAN S8232 1 790 790
Орталық Есептеуіш Бөлім AMD Opteron 6282SE 2 1000 2000
CPU салқындатқышы Noctua NH-U12DO A3 2 60 120
Жақтау Антек он екі жүз қара 1 200 200
Нәр беруші FSP AURUM PRO 1200 Вт 2 200 400
Графикалық үдеткіш AMD HD 7970 ГГц шығарылымы 2 500 1000
Графикалық үдеткіш AX7990 6GBD5-A2DHJ 1 1000 1000
Infiniband адаптері X4 DDR Infiniband 1 140 140
Шексіз жолақты кабель X4 DDR Infiniband 1 30 30
5680 (бір блок үшін)

Мұндай конфигурациялардың кластері үшін сізге екі қажет және олардың құны болады $11360 ... Толық жүктеме кезінде оның қуат тұтынуы шамамен 3000 Вт болады. Теориялық тұрғыдан өнімділік 31 Тфлопқа дейін болады.
Кафедра 29 «Интеллектуалды жүйелерді басқару»

Тақырып бойынша реферат:

Кластерлік жүйелер

Аяқталды:

К9-292 тобының студенті

Попов И.А.

МӘСКЕУ 2001 жыл

1. Кіріспе

2. Қазіргі заманның негізгі кластары параллельді компьютерлер

3. Параллельді компьютерлердің кластерлік архитектурасы

4. Кластерлік жүйелерді құру мақсаттары

5. Ауыспалы кластерлер

6. Жоғары өнімділік кластерлері

7. Beowulf жобасы

8. Қорытынды

9. Әдебиет

Кіріспе

Көппроцессорлық есептеу жүйелерінің дамуы

SMP, MPP, векторлық параллель жүйелер сияқты есептеу жүйелерін құрудың дәстүрлі архитектурасын дамыту айтарлықтай жылдам қарқынмен жүріп жатыр. Өнімділік артады, сенімділік пен төзімділік артады. Дегенмен, бұл архитектуралардың бір кемшілігі бар - құрылатын жүйелердің құны, кейде мұндай жүйелерді көптеген пайдаланушылар - білім беру және ғылыми ұйымдар үшін қол жетімді емес. Бұл өнімділіктің өсу қарқынын қолдау үшін қажет жүйенің аппараттық және бағдарламалық құрамдас бөліктерінің күрделілігіне байланысты өте жоғары нәтиже береді. Дегенмен, қазіргі уақытта ғылыми және практикалық қызметтің көптеген салаларында есептеу ресурстарына қажеттілік өте жоғары және оны қамтамасыз ету үшін дәстүрлі суперкомпьютерлік жүйелердің ресурстары жеткіліксіз.

Кластерлік жүйелер есептеу ресурстарының жетіспеушілігі мәселесінің арзан шешімі ретінде пайда болды және олардың архитектурасында кең таралған және салыстырмалы түрде арзан технологияларды, аппараттық құралдарды және бағдарламалық құралдармысалы, компьютер, Ethernet, Linux және т.б. Кластерлік жүйелерде жаппай технологияларды пайдалану орталық процессорлар, операциялық жүйелер және коммуникациялық орталар сияқты кәдімгі есептеу жүйелерінің құрамдас бөліктерін дамытудағы елеулі прогрестің арқасында мүмкін болды.

Кластерлік жүйелер архитектуралық тұрғыда MPP массивті параллелизмі бар жүйелердің дамуы болғандықтан, олардың дамуындағы басты рөл желілік технологиялар саласындағы прогресс болып табылады. Қазіргі уақытта арзан, бірақ тиімді коммуникациялық шешімдер пайда болды. Бұл кластерлік есептеу жүйелерінің жылдам пайда болуы мен дамуын алдын ала анықтады. Кластерлік жүйелерді дамытудағы ілгерілеуге басқа факторлар да ықпал етті.

Intel процессорларына негізделген дербес компьютерлердің өнімділігі де соңғы жылдары айтарлықтай өсті. Мұндай компьютерлер қымбатырақ және қуатты RISC процессорларына негізделген жұмыс станциялары үшін елеулі бәсекелестік тудыра бастады. Сонымен қатар, Linux операциялық жүйесі, UNIX-тің ақысыз нұсқасы барған сайын танымал бола бастады. Сонымен қатар, кластерлік жүйелердің көпшілігі дамыған ғылыми ұйымдар мен университеттерде, әдетте, Linux мамандары жұмыс істейді.

Кластерлік жүйелердің дамуының жоғары дәрежесін бүгінгі таңда әлемдегі ең қуатты суперкомпьютерлердің Top500 тізімінде 11 кластерлік қондырғының болуы көрсетеді.


Қазіргі параллельді компьютерлердің негізгі кластары

Кластерлік жүйелер параллель жүйелердің эволюциясы болып табылады. Есептеу жүйелерінің параллельді архитектураларының басқа түрлерінің арасында кластерлік жүйелердің орнын көрсету үшін олардың классификациясын беру қажет. Параллель жүйелерді әртүрлі критерийлер бойынша жіктеуге болады.

Аппараттық тұрғыдан алғанда, параллельді компьютерлерді классификациялаудың негізгі параметрі ортақ (SMP) немесе бөлінген жадтың (MPP) болуы болып табылады. SMP және MPP арасындағы бір нәрсе жад физикалық түрде бөлінген, бірақ логикалық түрде ортақ болатын NUMA архитектурасы болып табылады.

Симметриялық мультипроцессорлық жүйелер

SMP жүйесі бірнеше біртекті процессорлардан және ортақ жад массивінен тұрады. Масштабталатын, жалпы жад жүйесін құру үшін SMP архитектураларында жиі қолданылатын тәсілдердің бірі масштабталатын жады-процессорлық арнаны ұйымдастыру арқылы жадқа қолжетімділікті біркелкі ұйымдастыру болып табылады:

Әрбір жадқа қол жеткізу операциясы процессордан жадқа автобус транзакциясы ретінде түсіндіріледі. Кэш когеренттілігіне аппараттық құрал қолдау көрсетеді.

SMP-де әрбір процессордың кем дегенде жеке кэш (және бірнеше болуы мүмкін) болады.

SMP жүйесі бірнеше тең дәрежелі процессорлары бар бір компьютер деп айта аламыз. Қалғанының бәрі бір данада: бір жад, бір енгізу-шығару ішкі жүйесі, бір операциялық жүйе. «Пер» сөзі әрбір процессордың кез келген басқаның бәрін жасай алатынын білдіреді. Әрбір процессордың барлық жадыға рұқсаты бар, кез келген енгізу-шығару операциясын орындай алады, басқа процессорларды үзеді және т.б.

Бұл архитектураның кемшілігі - өткізу қабілеттілігі өте жоғары процессор-жад арнасын ұйымдастыру қажеттілігі.

Жаппай параллель жүйелер

Жаппай параллель MPP жүйесі біртекті есептеу түйіндерінен тұрады, оның ішінде:

  • бір немесе бірнеше орталық өңдеу бірліктері (әдетте RISC)
  • жергілікті жад (басқа түйіндердің жадына тікелей қол жеткізу мүмкін емес)
  • байланыс процессоры немесе желілік адаптер
  • қатты дискілержәне/немесе басқа енгізу/шығару құрылғылары

Жүйеге арнайы енгізу-шығару түйіндері мен басқару түйіндерін қосуға болады. Түйіндер қандай да бір байланыс ортасы (жоғары жылдамдықты желі, коммутатор және т.б.) арқылы қосылады.

Гетерогенді NUMA жадқа кіру мүмкіндігі бар жүйелер

NUMA (біркелкі емес жадқа қол жеткізу), ортақ жады бар әдеттегі SMP архитектурасынан айырмашылығы, әрқайсысында өзінің кэшінен басқа жергілікті жады бар бірнеше бөлек процессорлар ұсынылған:

Мұндай архитектурада процессор мен жад модульдері тығыз біріктірілген, сондықтан жергілікті жадқа кіру жылдамдығы «көрші» процессордың жадына қарағанда әлдеқайда жоғары. Енгізу/шығару ішкі жүйелері әрбір түйіннің бөлігі болуы немесе арнайы енгізу/шығару түйіндеріне біріктірілуі мүмкін. Егер кэш когеренттігі бүкіл жүйеде сақталса, онда бұл архитектура cc-NUMA деп аталады.

NUMA жүйесін сипаттаудың ең оңай жолы бірнеше бөліктерге бөлінген үлкен SMP жүйесін елестету болып табылады, бұл бөліктер жүйелік шиналармен жалғанған байланыс шинасы арқылы қосылады және әрбір бөлік өзінің негізгі жады мен енгізу/шығару ішкі жүйесін қамтиды. Бұл NUMA: кішірек және қарапайым SMP жиынтығына бөлінген үлкен SMP. NUMA негізгі проблемасы кэш когеренттігін қамтамасыз ету болып табылады. Аппараттық құрал жүйенің құрамдас бөліктерінің (әдетте түйіндер деп аталады) негізгі жадының барлық жеке құрылғыларымен бір үлкен жады ретінде жұмыс істеуге мүмкіндік береді.

Кластер архитектурасы

Есептеу жүйелерінің кластерлік архитектурасының осы классификациядағы орнын қарастырайық.

Кластер – бір ресурс ретінде пайдаланылатын толық компьютерлердің өзара байланысты жиынтығы. Толық компьютер – бұл оның жұмыс істеуі үшін қажеттінің бәрі бар толық компьютерлік жүйе, оның ішінде процессорлар, жад, енгізу/шығару ішкі жүйесі, сонымен қатар операциялық жүйе, ішкі жүйелер, қосымшалар және т.б. Әдетте бұл үшін SMP және тіпті NUMA архитектурасы болуы мүмкін дербес компьютерлер немесе параллель жүйелер қолайлы. Кластерлер еркін байланысқан жүйелер, түйіндердің байланысы шина архитектурасына немесе коммутаторға негізделген стандартты желілік технологиялардың бірін (Fast/Gigabit Ethernet, Myrinet) пайдаланады. Сондықтан олар MPP архитектурасының арзанырақ модификациясы болып табылады.

Параллельді компьютерлердің кластерлік архитектурасы

Жалпы принциптер

Бұрын айтылғандай, есептеу кластері – бұл бір мәселені шешу үшін желі ішінде біріктірілген компьютерлер жиынтығы (3-сурет), ол пайдаланушыға бір ресурс ретінде ұсынылады. Кластердің бұл тұжырымдамасын алғаш рет 80-ші жылдардың басында Digital Equipment Corporation ұсынған және енгізген болатын, ол әлі де осы технологияны дамытуда.

Бірыңғай ресурс пайдаланушыларға, әкімшілерге және қолданбаларға олар жұмыс істейтін бір ғана нысан — кластер бар деп болжауға мүмкіндік беретін бағдарламалық құралдың болуын білдіреді. Мысалы, кластерлік пакетті өңдеу жүйесі жұмысты өңдеу үшін кез келген жеке компьютерге емес, кластерге жіберуге мүмкіндік береді. Неғұрлым күрделі мысал - деректер базасы жүйелері. Іс жүзінде барлық дерекқор жеткізушілерінде кластердегі бірнеше машиналарда параллель жұмыс істейтін нұсқалары бар. Нәтижесінде дерекқорды пайдаланатын қолданбалар олардың жұмысы қайда орындалатыны туралы алаңдамайды. ДҚБЖ параллель әрекеттерді синхрондау және деректер қорының тұтастығын қамтамасыз ету үшін жауап береді.

Кластерді құрайтын компьютерлер - кластерлік түйіндер деп аталатындар - әрқашан салыстырмалы түрде тәуелсіз, бұл олардың кез келгенін профилактикалық қызмет көрсету үшін тоқтатуға немесе өшіруге немесе бүкіл кластерді бұзбай қосымша жабдықты орнатуға мүмкіндік береді.

Бір процессорлы дербес компьютерлер, екі немесе төрт процессорлы SMP серверлері әдетте кластердегі есептеу түйіндері ретінде пайдаланылады. Әрбір түйін операциялық жүйенің жеке көшірмесін басқарады, бұл көбінесе стандартты операциялық жүйелер: Linux, NT, Solaris және т.б. Түйіндердің құрамы мен қуаты бір кластер ішінде де өзгеруі мүмкін, бұл гетерогенді жүйелерді құруға мүмкіндік береді. Нақты коммуникациялық ортаны таңдау көптеген факторлармен анықталады: шешілетін міндеттер класының ерекшеліктері, кластерді кейіннен кеңейту қажеттілігі және т.б. Конфигурацияға мамандандырылған компьютерлерді қосуға болады, мысалы, файлдық сервер және, әдетте, Интернет арқылы кластерге қашықтан қол жеткізу мүмкіндігі қарастырылған.

Кластерлік жүйелердің архитектурасын анықтаудан оның өте кең ауқымды жүйелерді қамтитыны шығады. Төтенше нүктелерді ескере отырып, кластерді жергілікті 10 мегабиттік Ethernet желісі арқылы қосылған дербес компьютерлер жұбы, сондай-ақ Sandia Ұлттық зертханасында Cplant жобасының бөлігі ретінде жасалған есептеу жүйесі ретінде қарастыруға болады: Alpha процессорларына негізделген 1400 жұмыс станциясы, жоғары жылдамдықты Myrinet желісі арқылы қосылған.

Осылайша, мұны көруге болады әртүрлі опцияларкластерлері көп. Сонымен бірге кластерлік архитектурада қолданылатын коммуникациялық технологиялар мен стандарттар үлкен маңызға ие. Олар негізінен осы технологиялар негізінде құрастырылған кластерлерді шешуге болатын міндеттер ауқымын анықтайды.

Кластер құруға арналған коммуникациялық технологиялар

Кластерлерді мамандандырылған жоғары жылдамдықты деректерді беру автобустары негізінде де, жаппай желілік технологиялар негізінде де салуға болады. Жаппай коммуникация стандарттарының ішінде жиі қолданылатын желі Ethernet немесе оның неғұрлым өнімді нұсқасы - Fast Ethernet, әдетте, коммутаторларға негізделген. Дегенмен, Fast Ethernet арқылы хабар алмасудың үлкен шығыны осындай кластерде тиімді шешілетін тапсырмалар ауқымында елеулі шектеулерге әкеледі. Егер кластер жоғары өнімділік пен жан-жақтылықты қажет етсе, онда тезірек және мамандандырылған технологияларды қолдану қажет. Оларға SCI, Myrinet, cLAN, ServerNet және т.б. жатады. Бұл технологиялардың параметрлерінің салыстырмалы сипаттамалары мына жерде берілген.
1-кесте.

ServerNet

Fast Ethernet

Кідіріс (MPI)

Өткізу қабілеті (MPI)

180 МБ/с

Өткізу қабілеті (аппараттық)

400 МБ/с

160 Мб/с

150 МБ/с

12,5 МБ/с

MPI енгізу

HPVM, MPICH-GM және т.б.

1-кесте.

Кластерлік жүйелердегі байланыс желілерінің өнімділігі бірнеше сандық сипаттамалармен анықталады. Екі негізгі сипаттамасы бар: кідіріс – хабарламаларды жіберу кезіндегі бастапқы кідіріс уақыты және байланыс арналары бойынша ақпаратты тасымалдау жылдамдығын анықтайтын желінің өткізу қабілеті. Бұл жағдайда стандартта жарияланған ең жоғары сипаттамалар емес, пайдаланушы қолданбалары деңгейінде, мысалы, MPI қосымшалары деңгейінде қол жеткізілген нақты сипаттамалар маңызды. Атап айтқанда, пайдаланушы хабарламаны жіберудің Жіберу () функциясын шақырғаннан кейін, хабарлама процессордан шықпас бұрын бағдарламалық-аппараттық құралдарды ұйымдастыру ерекшеліктерімен анықталған қабаттардың тұтас жиынтығынан дәйекті түрде өтеді - демек, бар. кідіріс мәндерінің стандарттарының айтарлықтай бұзылуы. Кідірістің болуы желі бойынша максималды жіберу жылдамдығына шағын ұзындықтағы хабарламалармен қол жеткізу мүмкін еместігіне әкеледі.

Fast Ethernet және Scalable Coherent Interface (SCI) желісінің деректерін тасымалдау жылдамдығы хабар ұзындығына байланысты. Fast Ethernet жоғары кідіріспен сипатталады – 160-180 мкс, ал SCI кідірісі шамамен 5,6 мкс. Бірдей технологиялар үшін максималды тасымалдау жылдамдығы сәйкесінше 10 МБ/с және 80 МБ/с құрайды.

Кластерлік жүйелерді құру мақсаттары

Кластерлік жүйе сәулетшілері оларды құруда әртүрлі мақсаттарды көздеді. Біріншісі VAX/VMS кластерлері бар сандық жабдық болды. Бұл машинаның мақсаты жүйенің сенімділігін арттыру, жүйенің жоғары қолжетімділігін және ақауларға төзімділігін қамтамасыз ету болды. Қазіргі уақытта басқа өндірушілердің ұқсас архитектурасы бар көптеген жүйелер бар.

Кластерлік жүйелерді құрудың тағы бір мақсаты арзан жоғары өнімді параллельді есептеу жүйелерін құру болып табылады. Параллель жүйелердің бүкіл класына атау берген алғашқы жобалардың бірі - Беовульф кластері- қажетті есептеу ресурстарын қолдау үшін NASA Goddard ғарыштық ұшу орталығында пайда болды Жер жобасыжәне ғарыш ғылымдары. Beowulf жобасы 1994 жылдың жазында басталды және көп ұзамай Intel 486DX4 / 100 МГц процессорларына негізделген 16 процессорлық кластер жиналды. Әрбір түйінде 16 МБ жедел жады және 3 Ethernet желі адаптері болды. Бұл жүйе баға/өнімділік арақатынасы бойынша өте сәтті болып шықты, сондықтан бұл архитектура басқа ғылыми ұйымдар мен институттарда жасалып, кеңінен қолданыла бастады.

Кластерлердің әрбір класының өзіндік архитектурасы мен аппараттық мүмкіндіктері бар. Оларды толығырақ қарастырайық.

Ауыспалы кластерлер

Құрылыс принциптері

Есептеу жүйелерінің сенімділігі мен ақауларға төзімділігін қамтамасыз ету үшін көптеген әртүрлі аппараттық және бағдарламалық шешімдер қолданылады. Мысалы, жүйе ақауларға бейім барлық элементтерді - қуат көздерін, процессорларды, жедел жадты және сыртқы жадты қайталай алады. Артық құрамдас бөліктері бар мұндай ақауларға төзімді жүйелер қазіргі уақытта 99% жұмыс уақытының ықтималдығымен бағаланатын кәдімгі есептеу жүйелерінің сенімділігі жеткіліксіз есептерді шешу үшін қолданылады. Мұндай мәселелерде 99,999% немесе одан жоғары ықтималдық қажет. Бұл сенімділікке жоғарыда айтылғандардан ақауларға төзімділікті арттырудың әртүрлі әдістерін қолдану арқылы қол жеткізуге болады. Есептеу жүйесінің пайдалануға дайындық деңгейіне байланысты сенімділіктің төрт түрі бөлінеді:

Дайындық деңгейі, %

Макс. тоқтау уақыты

Жүйе түрі

Жылына 3,5 күн

Дәстүрлі

Жылына 8,5 сағат

Жоғары қолжетімділік

жылына 1 сағат

Ақаулыққа төзімді

жылына 5 минут

Ақаулыққа төзімді

2-кесте.

Артық компоненттері, сондай-ақ әртүрлі көп өңдеу нұсқалары бар ақауларға төзімді жүйелерден айырмашылығы, кластерлер бір-бірінен салыстырмалы түрде тәуелсіз машиналарды біріктіреді, олардың әрқайсысы профилактикалық қызмет көрсету немесе қайта конфигурациялау үшін тоқтатылуы мүмкін, бұл кластердің денсаулығын бұзбай. тұтас. Кластердің жоғары өнімділігі мен қолданбаның қысқартылған тоқтап қалуына мыналар арқылы қол жеткізіледі:

  • түйіндердің бірінде бағдарламалық қамтамасыз етудің ақауы болған жағдайда қолданба жұмысын жалғастырады немесе кластердің басқа түйіндерінде автоматты түрде қайта іске қосылады;
  • түйіндердің біреуінің (немесе бірнешеуінің) істен шығуы бүкіл кластерлік жүйенің күйреуіне әкелмейді;
  • Техникалық қызмет көрсету және жөндеу жұмыстары, қайта конфигурациялау немесе бағдарламалық қамтамасыз ету нұсқасын өзгерту, әдетте, кластерлік түйіндерде басқа түйіндердің жұмысын тоқтатпай бір-бірден жүзеге асырылуы мүмкін.

Кластердің ажырамас бөлігі - бұл шын мәнінде ақаулық кезінде түйінді қалпына келтіру мәселесін шешетін, сонымен қатар басқа тапсырмаларды шешетін арнайы бағдарламалық қамтамасыз ету. Кластерлік бағдарламалық құралда әдетте жүйе үшін алдын ала анықталған бірнеше қалпына келтіру сценарийлері болады және сондай-ақ әкімшіге осындай сценарийлерді теңшеу мүмкіндігін бере алады. Апатты қалпына келтіруге бүкіл түйін үшін де, оның жеке құрамдас бөліктері үшін де қолдау көрсетуге болады - қолданбалар, диск көлемі және т.б. Бұл функция жүйе ақаулығы жағдайында автоматты түрде іске қосылады және, мысалы, қайта конфигурациялау үшін түйіндердің бірін өшіру қажет болса, әкімші де іске қоса алады.

Кластерлердің ортақ жады болуы мүмкін сыртқы дискілерәдетте RAID дискі массивінде. RAID дискінің массиві сервердің ішкі жүйесі болып табылады кіріс шығысүлкен деректерді сақтауға арналған. В RAID массивтерісалыстырмалы түрде шағын дискілердің айтарлықтай саны үлкен көлемдегі деректерді сақтау үшін және жоғары сенімділік пен артықшылықты қамтамасыз ету үшін пайдаланылады. Мұндай массив компьютермен бір логикалық құрылғы ретінде қабылданады.

Апатты қалпына келтіруге бүкіл түйін үшін де, оның жеке құрамдас бөліктері үшін де қолдау көрсетуге болады - қолданбалар, диск көлемі және т.б. Бұл функция жүйе ақаулығы жағдайында автоматты түрде іске қосылады және, мысалы, қайта конфигурациялау үшін түйіндердің бірін өшіру қажет болса, әкімші де іске қоса алады.

Кластер түйіндері бір-бірінің денсаулығын бақылайды және кластер конфигурациясы сияқты арнайы «кластер» ақпаратымен алмасады, сондай-ақ ортақ дискілер арасында деректерді тасымалдайды және оларды пайдалануды үйлестіреді. Денсаулықты бақылау кластерлік түйіндердің қалыпты жұмыс істеуін растау үшін бір-біріне беретін арнайы сигнал арқылы жүзеге асырылады. Түйіндердің бірі сигнал беруді тоқтатқанда, ол кластерлік бағдарламалық құралға ақаулық орын алғаны және қалған түйіндерге жүктемені қайта бөлу қажеттілігі туралы сигнал береді. Мысал ретінде VAX/VMS ауыстыру кластерін алайық.

VAX/VMS кластері

DEC бірінші болып 1983 жылы кластерлік жүйе концепциясын жариялады, оны бір ақпаратты өңдеу блогын білдіретін өзара байланысты компьютерлер тобы ретінде анықтады. Негізінде, VAX кластері ортақ бірлігі бар еркін байланысқан көп машиналы жүйе болып табылады сыртқы жадыбасқару мен басқарудың біртұтас механизмін қамтамасыз ету.

VAX кластерінің келесі қасиеттері бар:

Ресурстарды бөлісу.Кластердегі VAX компьютерлері ортақ таспаға және диск жетектеріне қатынасты ортақ пайдалана алады. Кластердегі барлық VAX компьютерлері жеке деректер файлдарына жергілікті ретінде қатынаса алады.

Жоғары қолжетімділік. VAX компьютерлерінің біреуі істен шықса, оның пайдаланушыларының тапсырмалары автоматты түрде кластердегі басқа компьютерге тасымалдана алады. Жүйеде бірнеше HSC болса және олардың біреуі сәтсіз болса, басқа HSC оны автоматты түрде алады.

Жоғары өткізу қабілеті... Қатар қолданбалы жүйелеркластердегі бірнеше компьютерде тапсырмаларды қатар орындау мүмкіндігін пайдалана алады.

Жүйенің қызмет ету мүмкіндігі... Ортақ дерекқорларды бір жерден жүргізуге болады. Қолданбалы бағдарламаларды ортақ кластерлік дискілерге бір рет орнатуға және кластердегі барлық компьютерлер арасында ортақ пайдалануға болады.

Кеңейтімділік... Кластердің есептеу қуатын арттыру оған қосымша VAX компьютерлерін қосу арқылы қол жеткізіледі. үшін қосымша дискілер магниттік дискілержәне магниттік таспалар кластердегі барлық компьютерлер үшін қолжетімді болады.

VAX кластерінің жұмысы екі негізгі құрамдаспен анықталады. Бірінші компонент – жоғары жылдамдықты байланыс механизмі, ал екіншісі – тұтынушыларға жүйелік қызметке ашық қолжетімділікті қамтамасыз ететін жүйелік бағдарламалық қамтамасыз ету. Физикалық түрде кластер ішіндегі қосылымдар әртүрлі өнімділік сипаттамалары бар үш түрлі шина технологиясы арқылы жүзеге асырылады.

VAX кластеріндегі негізгі байланыс әдістері суретте көрсетілген. 4.

Күріш. 4 VAX / VMS кластері

Computer Interconnect (CI) шинасы 70 Мбит/с жылдамдықта жұмыс істейді және VAX компьютерлері мен HSC-терді жұлдызша қосқышы арқылы қосу үшін пайдаланылады. Әрбір CI сілтемесінде соқтығыстарды жою үшін түйінге тән кідірістерді пайдаланатын негізгі CSMA технологиясын пайдалана отырып, екі жіберу және екеуі қабылдау үшін қос артық сілтемелер бар. Максималды CI сілтеме ұзындығы - 45 метр. Star Coupler әрқайсысы VAX немесе HSC қосуға арналған 32 CI шинасына дейін қолдау көрсете алады. HSC - бұл дискілер мен таспа жетектерінің жұмысын басқаратын интеллектуалды құрылғы.

VAX компьютерлерін жергілікті желі арқылы да кластерге біріктіруге болады

NI пайдаланатын Ethernet - Network Interconnect (жергілікті VAX кластерлері деп аталады), алайда кластерлік компьютерлер мен басқа желі клиенттері арасында Ethernet өткізу қабілеттілігін ортақ пайдалану қажеттілігіне байланысты мұндай жүйелердің өнімділігі салыстырмалы түрде төмен.

Кластерлер сонымен қатар DSSI (Digital Storage System Interconnect) шинасына негізделуі мүмкін. DSSI шинасы төрт төмен және орташа диапазондағы VAX компьютерлерін біріктіре алады. Әрбір компьютер бірнеше DSSI адаптерлеріне қолдау көрсете алады. Жеке DSSI шинасы 4 МБ/с (32 Мбит/с) жылдамдықпен жұмыс істейді және 8 құрылғыға дейін қосылуға мүмкіндік береді. Келесі құрылғы түрлеріне қолдау көрсетіледі: DSSI жүйелік адаптері, RF сериялы диск контроллері және TF сериялы таспа контроллері. DSSI кластердегі түйіндер арасындағы қашықтықты 25 метрге дейін шектейді.

VAX кластер жүйесінің бағдарламалық құралы

DEC дискілер сияқты ортақ ресурстарға қатынасу кезінде процессорлардың бір-бірімен дұрыс байланысуын қамтамасыз ету үшін Distributed Lock Manager (DLM) пайдаланады. DLM өте маңызды функциясы операциялық жүйе енгізу/шығару және дискілік кэштердің когерентті күйін сақтау болып табылады қолданбалы бағдарламалар... Мысалы, реляциялық дерекқор қолданбаларында DLM кластердегі әртүрлі компьютерлердегі дерекқор буферлері арасындағы дәйекті күйді сақтауға жауапты.

Кластердегі процессорлар арасындағы енгізу-шығару кэшінің когеренттілігін сақтау мәселесі белгілі бір шинаға негізделген тығыз байланысқан мультипроцессорлық жүйеде кэштің когеренттігін сақтау мәселесіне ұқсас. Деректер блоктары бір уақытта бірнеше кэште пайда болуы мүмкін және егер бір процессор осы көшірмелердің бірін өзгертсе, басқа бар көшірмелер қазірдің өзінде көрсетілмейді. Қазіргі күйдеректер блогы. Блокты алу (блокты иелену) тұжырымдамасы осындай жағдайларды басқарудың бір жолы болып табылады. Блокты өзгертпес бұрын блокқа меншік құқығы қорғалуы керек.

DLM-мен жұмыс істеу айтарлықтай үстеме шығындарды талап етеді. VAX/VMS ортасындағы үстеме шығын үлкен болуы мүмкін, бір енгізу/шығару әрекеті үшін CI шинасында алты хабарға дейін қажет. Үстеме шығындар кластердегі әрбір процессор үшін 20%-ға дейін жоғары болуы мүмкін.

Жоғары өнімділік кластерлері

Құрылыс принциптері

Жоғары өнімді кластерлердің архитектурасы жалпы мақсаттағы операциялық жүйемен басқарылатын өнімділігі аз және жаппай шығарылатын компоненттерде MPP жүйелерін құру принциптерінің дамуы ретінде пайда болды. MPP жүйелері сияқты кластерлер біртекті немесе MPP-ден айырмашылығы әртүрлі немесе гетерогенді болуы мүмкін еркін байланысқан түйіндерден тұрады. Жоғары өнімді кластер архитектурасын жобалау кезінде кластер түйіндерін қосатын коммуникациялық шинаның жоғары тиімділігін қамтамасыз етуге ерекше көңіл бөлінеді. Үлкен, салыстырмалы түрде төмен өнімділігі бар автобустар кластерлерде жиі қолданылатындықтан, кластерлердің өнімділігі бойынша олардың төмен өткізу қабілетін жою және кластерде тиімді параллелизацияны ұйымдастыру үшін бірқатар шараларды қабылдау қажет. Мысалы, Fast Ethernet ең жоғары жылдамдықты технологияларының бірінің өткізу қабілеті MPP-архитектурасының заманауи суперкомпьютерлеріндегі интерконнекттерге қарағанда әлдеқайда төмен.

Желінің нашар өнімділігі мәселелерін шешу үшін бірнеше әдістер қолданылады:

Кластер бірнеше сегменттерге бөлінген, олардың ішінде түйіндер Myrinet сияқты өнімділігі жоғары шина арқылы қосылады, ал әртүрлі сегменттердің түйіндері арасындағы байланыс Ethernet/Fast Ethernet сияқты өнімділігі төмен желілер арқылы жүзеге асырылады. Бұл коммуникациялық ортаның құнын төмендетумен бірге процестер арасында интенсивті деректер алмасу мәселелерін шешу кезінде мұндай кластерлердің өнімділігін айтарлықтай арттыруға мүмкіндік береді.

«Транкинг» деп аталатын пайдалану, т.б. бірнеше Fast Ethernet арналарын бірнеше қосқыштарды қосатын ортақ жоғары жылдамдықты арнаға біріктіру. Бұл тәсілдің айқын кемшілігі коммутаторларды қосуға қатысатын кейбір порттардың «жоғалуы» болып табылады.

Өнімділікті жақсарту үшін осындай желілер арқылы ақпарат алмасуға арналған арнайы хаттамалар жасалады, олар арнаның өткізу қабілетін тиімдірек пайдалануға мүмкіндік береді және стандартты хаттамалармен (TCP/IP, IPX) қойылған кейбір шектеулерді алып тастайды. Бұл әдіс Беовульф класындағы жүйелерде жиі қолданылады.

Жоғары өнімді кластердің болуы тиіс негізгі сапа көлденең масштабтау болып табылады, өйткені кластер архитектурасы қамтамасыз ететін негізгі артықшылықтардың бірі жүйеге жай ғана жаңа түйіндерді қосу арқылы бар жүйенің сыйымдылығын арттыру мүмкіндігі болып табылады. Сонымен қатар, қуаттың ұлғаюы қосылған ресурстардың қуатына пропорционалды түрде жүреді және оның жұмысы кезінде жүйені тоқтатпай орындауға болады. Архитектурасы басқа жүйелерде (әсіресе MPP) әдетте тек тік масштабтауға болады: жад қосу, мультипроцессорлық жүйелердегі процессорлар санын көбейту немесе жаңа адаптерлерді немесе дискілерді қосу. Бұл жүйе өнімділігін уақытша жақсартуға мүмкіндік береді. Дегенмен, жүйе жадтың, процессорлардың немесе дискілердің максималды қолдау көрсетілетін көлеміне орнатылады, жүйе ресурстары таусылады және сіз жасауыңыз керек. жаңа жүйенемесе ескісін қайта өңдеңіз. Кластер жүйесі де тігінен масштабталады. Осылайша, тік және көлденең масштабтау арқылы кластер үлгісі үлкен икемділік пен жүйе өнімділігін арттырудың жеңілдігін қамтамасыз етеді.

Beowulf жобасы

Беовульф - 7-8 ғасырдың бірінші үштен бірі оқиғалары туралы баяндайтын скандинавиялық эпопея, оған шайқастарда өзін дәріптеген аттас батыр қатысушы.

Мұндай құрылымның кластерлік жүйесін жүзеге асыру мысалдарының бірі - Беовульф кластерлері. Beowulf жобасы АҚШ-тағы бір жарым онға жуық ұйымды (негізінен университеттерді) біріктірді. Жобаның жетекші әзірлеушілері NASA мамандары. Кластерлердің бұл түрінде келесі негізгі белгілерді бөлуге болады:

Беовульф кластері біріктірілген бірнеше бөлек түйіндерден тұрады ортақ желі, ортақ ресурстар кластер түйіндерімен пайдаланылмайды;

Қос процессорлы SMP жүйелері негізінде кластерлерді құру оңтайлы болып саналады;

Түйіндер арасындағы өзара әрекеттесудің үстеме шығындарын азайту үшін толық дуплексті 100 МБ Fast Ethernet пайдаланылады (SCI жиі пайдаланылады), бірнеше желі сегменттері жасалады немесе коммутатор арқылы кластерлік түйіндер қосылады;

Бағдарламалық құрал ретінде Linux ОЖ және еркін байланыс кітапханалары (PVM және MPI) пайдаланылады;

Беовульф жобасының тарихы

Жоба 1994 жылдың жазында NASA-ның Годдард ғарыштық ұшу орталығында (GSFC), дәлірек айтқанда, оның негізінде құрылған CESDIS (Ғарыштық деректер мен ақпарат ғылымдарының шеберлігі орталығы) басталды.

Бірінші Beowulf кластері Linux жүйесінде жұмыс істейтін Intel компьютерлеріне негізделген. Бұл 16 түйіннен тұратын жүйе болды (486DX4 / 100 МГц процессорлар, 16 МБ жады және 3 желілік адаптерәрбір түйінде 3 «параллель» 10Мбит Ethernet кабелі). Ол Жер және ғарыш туралы ғылымдар жобасы (ESS) үшін есептеу ресурсы ретінде жасалған.

Әрі қарай, GSFC және NASA-ның басқа бөлімшелерінде басқа, неғұрлым күшті кластерлер жиналды. Мысалы, HIVE (Жоғары параллельді біріктірілген виртуалды орта) кластері 2 Pentium Pro / 200 МГц процессоры және әрқайсысында 4 ГБ жады, 5 Fast Ethernet қосқышы бар 64 түйінді қамтиды. Бұл кластердің жалпы құны шамамен $ 210 000. Beowulf жобасы жоғары өнімді және мамандандырылған бірқатар әзірледі. желі драйверлері(атап айтқанда, бірнеше Ethernet арналарын бір уақытта пайдалануға арналған драйвер).

Беовульф архитектурасы

Кластер түйіндері.

Бұл не бір процессорлы ДК, не процессорларының саны аз (2-4, мүмкін 6-ға дейін) SMP-серверлері. Қандай да бір себептермен қос процессорлы жүйелер негізінде кластерлерді құру оңтайлы болып саналады, бұл жағдайда кластерді орнату біршама қиын болады (негізінен 2 Pentium II / III процессорлары үшін салыстырмалы түрде арзан аналық платалар бар) . Әрбір түйінге 64-128 МБ жедел жад орнату керек (қос процессорлы жүйелер үшін 64-256 МБ).

Машиналардың бірі орталық (бас) ретінде бөлінуі керек, онда басқа (жұмыс істейтін) түйіндерге қарағанда жеткілікті үлкен қатты диск, мүмкін қуатты процессор және көбірек жад орнатылуы керек. Бұл құрылғы мен арасындағы (қауіпсіз) байланысты қамтамасыз ету мағынасы бар сыртқы әлем.

Жұмыс түйіндерін құрастыру кезінде қатты дискілерден бас тартуға әбден болады - бұл түйіндер ОЖ-ны орталық машинадан желі арқылы жүктейді, бұл ақша үнемдеуден басқа, ОЖ мен барлық қажетті бағдарламалық жасақтаманы бір рет конфигурациялауға мүмкіндік береді ( орталық машинада). Егер бұл түйіндер бір уақытта пайдаланушы жұмыс станциясы ретінде пайдаланылмаса, оларға бейне карталар мен мониторларды орнатудың қажеті жоқ. Түйіндерді тіректерге орнатуға болады (тіркеу), бұл түйіндер алатын орынды азайтады, бірақ сәл қымбатырақ болады.

Қазірдің өзінде негізінде кластерлерді ұйымдастыруға болады бар желілержұмыс станциялары, яғни. пайдаланушы жұмыс станцияларын түнде және демалыс күндері кластер түйіндері ретінде пайдалануға болады. Бұл түрдегі жүйелер кейде COW (жұмыс станцияларының кластері) деп аталады.

Түйіндердің саны қажетті есептеу ресурстары мен қолда бар қаржылық ресурстар негізінде таңдалуы керек. Түйіндердің көптігімен күрделірек және қымбат желілік жабдықты орнату қажет болатынын түсіну керек.

Beowulf жобасына қатысатын негізгі LAN түрлері: Gigabit Ethernet, Fast Ethernet және 100-VG AnyLAN. Ең қарапайым жағдайда бір Ethernet сегменті пайдаланылады (бұралған жұпта 10 Мбит/сек). Дегенмен, мұндай желінің төмен құны, соқтығыстарға байланысты, процессор аралық алмасу үшін үлкен үстеме шығындарға айналады; а жақсы өнімділікмұндай кластерді өте қарапайым параллельді құрылымы бар және процестер арасындағы өте сирек өзара әрекеттесуі бар тапсырмалар үшін ғана күту керек (мысалы, опцияларды санау).

Процессор аралық алмасулардың жақсы өнімділігін алу үшін 100 Мбит/сек жылдамдықтағы толық дуплексті Fast Ethernet пайдаланылады. Бұл жағдайда соқтығыстардың санын азайту үшін не бірнеше «параллельді» Ethernet сегменттерін орнатыңыз, не кластер түйіндерін коммутатор арқылы қосыңыз.

Қымбатырақ, бірақ сонымен бірге танымал опция - Myrinet (1,28 Гбит/сек, толық дуплекс) сияқты қосқыштарды пайдалану.

Аз танымал, бірақ кластерлерді құруда шын мәнінде пайдаланылады, желілік технологиялар - cLAN, SCI және Gigabit Ethernet.

Кейде кластерлік түйіндер арасындағы байланыс үшін параллельді бірнеше физикалық байланыс арналары қолданылады - әдетте Fast Ethernet технологиясы үшін қолданылатын «арна байланысы» деп аталады. Бұл жағдайда әрбір түйін Fast Ethernet қосқышына бірнеше арнамен қосылады. Бұған қол жеткізу үшін түйіндер бірнеше NIC немесе көп портты Fast Ethernet карталарымен жабдықталған. Linux жүйесінде жұмыс істейтін түйіндерде арна байланыстыруды пайдалану сәйкес арналар арасында жіберу/қабылдау жүктемесін біркелкі бөлуге мүмкіндік береді.

Жүйелік бағдарламалық қамтамасыз ету

Операциялық жүйе. Әдетте, Linux жүйесі бөлінген параллельді есептеулер үшін арнайы оңтайландырылған нұсқаларда қолданылады. Linux 2.0 ядросы нақтыланды. Кластерлерді құру барысында стандартты Linux желілік құрылғы драйверлері өте тиімсіз болып шықты. Сондықтан, ең алдымен Fast Ethernet және Gigabit Ethernet желілері үшін жаңа драйверлер және бірнеше параллельді логикалық біріктіру мүмкіндігі әзірленді. желілік қосылымдардербес компьютерлер арасында (аппараттық арналарды байланыстыруға ұқсас), бұл өткізу қабілеттілігі төмен арзан жергілікті желілерден жиынтық өткізу қабілеті жоғары желіні құруға мүмкіндік береді.

Кез келген кластердегі сияқты, әрбір кластер түйіні ОЖ ядросының жеке көшірмесін іске қосады. Жақсартулардың арқасында процесс идентификаторларының бірегейлігі жеке түйіндер емес, бүкіл кластер ішінде қамтамасыз етіледі.

Коммуникациялық кітапханалар. Хабарламаны жіберу моделіндегі ең көп таралған параллельді бағдарламалау интерфейсі MPI болып табылады. MPI ұсынылатын тегін енгізу Аргонна ұлттық зертханасының MPICH пакеті болып табылады. Myrinet қосқышына негізделген кластерлер үшін HPVM жүйесі әзірленді, оған MPI енгізу де кіреді.

Бір SMP-жүйесінде параллелизмді тиімді ұйымдастыру үшін екі нұсқа болуы мүмкін:

  1. SMP құрылғысындағы әрбір процессор үшін бөлек MPI процесі пайда болады. Осы жүйедегі MPI процестері ортақ жад арқылы хабарламалармен алмасады (MPICH сәйкес конфигурациялануы керек).
  2. Әрбір құрылғыда тек бір MPI процесі іске қосылады. Әрбір MPI процесінің ішінде параллельизация «ортақ жад» үлгісінде орындалады, мысалы, OpenMP директивалары арқылы.

MPI енгізуді орнатқаннан кейін желіні бағыттаудың нақты өнімділігін тексеру мағынасы бар.

MPI-ден басқа кластерлерде қолдануға болатын басқа кітапханалар мен параллельді бағдарламалау жүйелері бар.

Beowulf мысалы - Avalon кластерін енгізу

1998 жылы астрофизик Майкл Уоррен және теориялық астрофизикалық топтың басқа ғалымдары Лос-Аламос ұлттық зертханасында DEC Alpha / 533 МГц процессорларына негізделген Беовульф кластері болып табылатын Avalon суперкомпьютерін құрастырды. Avalon бастапқыда 68 процессордан тұрды, содан кейін ол 140-қа дейін кеңейтілді. Әрбір түйінде 256 Мбайт жедел жады, 3,2 ГБ EIDE қатты дискі және Kingston NIC (жалпы түйін құны $ 1700) бар. Түйіндер 4 36 портты Fast Ethernet қосқышы мен орталықта орналасқан 12 портты Gigabit Ethernet қосқышы арқылы 3Com арқылы қосылады.

Avalon-тың жалпы құны 313 мың долларды құрайды, оның LINPACK өнімділігі (47,7 GFLOPS) оған Top500 тізімінің 12-шығарылымында (152 процессорлық IBM SP2 жүйесінің жанында) 114-орынға шығуға мүмкіндік берді. 70-процессорлық Avalon конфигурациясы көптеген сынақтарда құны 1 миллион доллардан асатын 64 процессорлы SGI Origin2000 / 195MHz жүйесі сияқты өнімділікті көрсетті.

Avalon қазіргі уақытта астрофизикалық, молекулалық және басқа да ғылыми есептеулерде кеңінен қолданылады. SC 98-де Avalon жасаушылары «Avalon: An Alpha/Linux кластері 150 мың долларға 10 Гфлопқа жетеді» атты баяндамасын ұсынды және 1998 жылы Гордон Белл Прайс/Өнімділік сыйлығын жеңіп алды.

Қорытынды

Жетекші микропроцессор өндірушілері Sun Microsystems, Dell және IBM суперкомпьютер индустриясының болашағына бірдей көзқараспен қарайды: жеке, тәуелсіз суперкомпьютерлерді өнімділігі жоғары серверлердің кластерлері ауыстыруы керек. Қазірдің өзінде үлестірілген кластерлік жүйелер өнімділігі бойынша заманауи классикалық суперкомпьютерлерден алда: қазіргі әлемдегі ең қуатты компьютер - IBM ASCI White - өнімділігі 12 TeraFLOP, желі өнімділігі. [электрондық пошта қорғалған]шамамен 15 TeraFLOP деп бағаланады. Сонымен қатар, IBM ASCI White 110 миллион долларға сатылды және оның бүкіл тарихында [электрондық пошта қорғалған] 500 мың долларға жуық қаржы жұмсалды.

Әдебиет

2.http: //www.beowulf.com

3. http://newton.gsfc.nasa.gov/thehive/

4. LoBoS, http://www.lobos.nih.gov

5. http://parallel.ru/news/kentucky_klat2.html

6. http://parallel.ru/news/anl_chibacity.html

7. http://parallel.ru/cluster/

8. http://www.ptc.spbu.ru

MIMD компьютерлері

MIMD компьютері бар Нпроцессорлар дербес орындалады Нпәрмен ағындары және өңдеу Ндеректер ағындары. Әрбір процессор өзінің нұсқаулар ағынымен жұмыс істейді, яғни MIMD компьютері мүлдем басқа бағдарламаларды параллель орындай алады.


MIMD архитектуралары жадтың физикалық ұйымдасуына байланысты әрі қарай жіктеледі, яғни процессордың өзінің жергілікті жады бар ма және коммутациялық желіні пайдаланып басқа жад блоктарына қол жеткізе ме, немесе коммутация желісі барлық процессорларды жалпы жадыға қосады ма. Жадты ұйымдастыру негізінде параллель архитектураның келесі түрлері бөлінеді:

  • Бөлінген жады компьютерлері (Бөлінген жады)
    Процессор жергілікті жадқа қол жеткізе алады, процессорларды қосатын желі арқылы берілетін хабарламаларды жіберіп, қабылдай алады. Хабарламалар процессорлар арасындағы байланыс үшін немесе баламалы түрде жадтың қашықтағы блоктарын оқу және жазу үшін қолданылады. Идеалдандырылған желіде екі желі түйіні арасындағы хабарламаны жіберу құны екі түйіннің орналасуына да, желілік трафикке де тәуелсіз, бірақ хабарламаның ұзақтығына байланысты.

  • Ортақ жадты компьютерлер (Нағыз ортақ жады)
    Барлық процессорлар ортақ жадқа әдетте автобус немесе автобус иерархиясы арқылы бірге қол жеткізеді. Параллельді алгоритмдердің теориялық зерттеулерінде жиі қолданылатын идеалдандырылған PRAM (Parallel Random Access Machine) үлгісінде кез келген процессор бір уақытта кез келген жад орнына қол жеткізе алады. Тәжірибеде бұл архитектураның ауқымдылығы әдетте жады иерархиясының қандай да бір түріне әкеледі. Ортақ жадқа кіру жиілігін әрбір процессормен байланысты кэш жадында жиі қолданылатын деректердің көшірмелерін сақтау арқылы азайтуға болады. Бұл кэшке қол жеткізу ортақ жадқа тікелей қол жеткізуден әлдеқайда жылдамырақ.

  • Виртуалды ортақ (ортақ) жады бар компьютерлер (Виртуалды ортақ жад)
    Мұндай ортақ жад жоқ. Әрбір процессордың өзінің жергілікті жады бар және басқа процессорлардың жергілікті жадына «жаһандық мекенжай» арқылы қол жеткізе алады. Егер «жаһандық мекенжай» жергілікті жадты көрсетпесе, онда жадқа қатынасу байланыс желісі арқылы жіберілген хабарламалар арқылы жүзеге асырылады.

Ортақ жад машиналарының мысалдары:

  • Sun Microsystems (көп процессорлық жұмыс станциялары)
  • Silicon Graphics Challenge (көп процессорлық жұмыс станциялары)
  • Кезекті симметрия
  • дөңес
  • Cray 6400.

Келесі компьютерлер бөлінген жад машиналары ретінде жіктеледі

  • IBM-SP1 / SP2
  • Parsytec GC
  • CM5 (Ойлау машинасы корпорациясы)
  • Cray T3D
  • Paragon (Intel Corp.)
  • nCUBE
  • Meiko CS-2
  • AVX (Alex Parallel Computers)
  • IMS B008

Бөлінген жадының MIMD архитектурасын коммутациялық желінің өткізу қабілетіне қарай да жіктеуге болады. Мысалы, процессор мен жад модулінің (процессор элементі) жұптары топологиялармен желіге қосылған архитектурада тор, компьютердегі процессорлар санына қарамастан әрбір процессорда желілік қосылымдардың бірдей саны бар. Мұндай желінің жалпы өткізу қабілеттілігі процессорлар санына қарай сызықты түрде өседі. Екінші жағынан, топологиялары бар желі бар архитектурада гиперкуб, процессордың желіге қосылу саны процессорлар санының логарифмдік функциясы болып табылады және желілік өткізу қабілеттілігі процессорлар санымен сызықтық қарағанда жылдамырақ өседі. Топологияда топәрбір процессор барлық басқа процессорларға қосылған болуы керек.


2D желісі тор (торус)

2D желісі торус


Топологиясы бар желі топ

Ұлттық суперкомпьютер қолданбалары орталығы (Иллинойс университеті, Урбана-Шампейн)

MPI: Хабарды жіберу интерфейсі

«Хабар алмасу интерфейсі» атауы өзі үшін сөйлейді. Бұл хабар алмасу үлгісінде параллельді бағдарламаларды құрудың жақсы стандартталған механизмі. C / C ++, Fortran 77/90 үшін стандартты MPI «байланыстырулары» бар. Барлық дерлік суперкомпьютерлік платформалар, сондай-ақ UNIX және Windows NT жұмыс станциялары желілері үшін ақысыз және коммерциялық енгізулер бар. Қазіргі уақытта MPI өз класының ең кең таралған және динамикалық дамып келе жатқан интерфейсі болып табылады.

Beowulf - Linux кластерлері

Михаил Кузьминский

«Ашық жүйелер»

Мыңжылдықтар тоғысында бізде микропроцессорларды да, операциялық жүйелерді де қамтитын компьютерлік индустрияның монополиялануының куәсі болуға толық мүмкіндігіміз бар. Әрине, біз Intel микропроцессорлары (Merced RISC архитектурасының процессорларын ығыстыру қаупі бар) және Microsoft корпорациясының ОЖ туралы айтып отырмыз.

Екі жағдайда да табыс көбінесе өнімнің «тұтынушы» қасиеттерімен ғана емес, маркетингтік машинаның күшімен анықталады. Менің ойымша, есептеуіш қауымдастық ықтимал салдарлардың ауқымын әлі түсінген жоқ.

Кейбір сарапшылар компьютер нарығының әлеуетті монополиялануын IBM-нің 1970 жылдардағы негізгі компьютерлерде де, операциялық жүйелерде де монополиялық үстемдігімен салыстырды. Мен бұл техникамен ұзақ уақыт бойы жұмыс істеп келемін және Unix ОЖ біздің елде тараған сайын, мен IBM MVS операциялық жүйесінің көптеген артықшылықтарын түсінемін. Соған қарамастан, мен мұндай монополия ілгерілеуді жылдамдатуға ықпал еткен жоқ деген ортақ пікірді қолдаймын.

Бір кездері Unix-ке алғашқылардың бірі болып ауысқан батыс университеттері өздерінің перспективалық әзірлемелерінде әлі де осы жүйеге сүйенеді және платформа ретінде Linux жиі таңдалуда. Бұл мақала тағылымды академиялық әзірлемелердің біріне арналған.

Linux қоғамдық құбылыс ретінде

Linux компьютерлік өмірдегі көрнекті құбылысқа айналғанына енді таң қалмаймыз. GNU тегін бағдарламалық қамтамасыз етудің ең бай жиынтығымен біріктірілген бұл операциялық жүйе үйде де, шетелде де коммерциялық емес пайдаланушылар арасында өте танымал болды. Оның танымалдығы артып келеді. Linux нұсқалары тек Intel x86 платформасы үшін ғана емес, сонымен қатар басқа процессор архитектуралары үшін де бар, соның ішінде DEC Alрha және Интернет қолданбалары үшін, сондай-ақ есептеу тапсырмаларын орындау үшін кеңінен қолданылады. Қысқасы, Linux «танымал операциялық жүйе» түріне айналды. Дегенмен, Linux-тың әлсіз жақтары жоқ деп айтуға болмайды; олардың бірі - SMP архитектурасына жеткіліксіз қолдау.

Компьютерлік ресурстарды, оның ішінде өңдеу қуатын арттырудың ең арзан жолы кластерді құру болып табылады. Кластерлердің бір түрі ретінде физикалық және логикалық таралған жедел жады бар жаппай параллель суперкомпьютерлерді де қарастыруға болады. Мұндай архитектураның ең жарқын мысалы - әйгілі IBM SP2 компьютері.

Барлық мәселе кластердегі компьютерлерді (түйіндерді) не байланыстырады. Осы мақсатта «нақты» суперкомпьютерлер жоғары өткізу қабілеттілігін қамтамасыз етуге арналған арнайы, сондықтан қымбат аппараттық құралдарды пайдаланады. Кластерлер әдетте әдеттегі желілік стандарттарды пайдаланады - Ethernet, FDDI, ATM немесе HiPPI.

Linux операциялық жүйесін пайдаланатын кластерлік технологиялар бірнеше жыл бұрын дами бастады және Windows NT үшін Wolfpack пайда болғанға дейін қол жетімді болды. 90-жылдардың ортасында Беовульф жобасы осылайша пайда болды.

Эпостық жырдың қаһарманы

«Беовульф» - 7-8 ғасырдың бірінші үштен біріндегі оқиғаларды баяндайтын скандинавтық эпопея, оған шайқастарда өзін дәріптеген аттас батыр қатысқан. Жоба авторларының Беовульф енді кіммен күресетіні туралы ойлағаны белгісіз (Windows NT-пен шығар?), Бірақ қаһармандық бейнесі АҚШ-тағы он шақты ұйымды (негізінен университеттерді) консорциумға біріктіруге мүмкіндік берді. Жобаға қатысушылар арасында суперкомпьютерлік орталықтар басым деп айтуға болмайды, бірақ Loki және Megalon кластерлері Лос-Аламос және АҚШ Энергетика министрлігінің Sandia зертханасы сияқты әлемге әйгілі жоғары өнімді есептеу орталықтарында орнатылған; жобаның жетекші әзірлеушілері NASA мамандары. Жалпы, жобаға қатысушылар жасаған барлық кластерлерге ерекше атаулар беріледі.

Beowulf-тен басқа, тағы бір жақын кластерлік технология белгілі - ҚАЗІР. ҚАЗІР, дербес компьютерлер әдетте өздері және оларға жүктелген міндеттер және жауапкершіліктер туралы ақпаратты қамтиды. жүйелік әкімшімұндай кластер осы ақпаратты қалыптастыруды қамтиды. Беовульф кластерлері осы тұрғыдан қарапайымырақ (яғни, сисадминнің көзқарасы бойынша): мұнда жеке түйіндер кластер конфигурациясынан бейхабар. Тек бір арнайы түйінде конфигурация ақпараты бар; және тек оның сыртқы әлеммен желілік байланысы бар. Барлық қалған кластер түйіндері локальді желі арқылы қосылған және олар сыртқы әлеммен басқару түйінінен тек «жұқа көпір» арқылы қосылған.

Beowulf технологиясындағы түйіндер ДК аналық платалары болып табылады. Әдетте, түйіндер жергілікті қатты дискілерді де пайдаланады. Түйіндерді қосу үшін жергілікті желілердің стандартты түрлері қолданылады. Біз бұл мәселені төменде қарастырамыз, алдымен бағдарламалық жасақтамаға тоқталамыз.

Ол Beowulf-та CD-ROM дискісінде сатып алуға болатын стандартты коммерциялық қол жетімді Linux операциялық жүйесіне негізделген. Бастапқыда жобаға қатысушылардың көпшілігі Slackware шығарған ықшам дискілерге назар аударды, бірақ қазір RedHat нұсқасына артықшылық беріледі.

Кәдімгі Linux ОЖ-да хабар алмасу үлгісінде (LAM MPI 6.1, PVM 3.3.11 және т.б.) танымал параллельдеу құралдарын орнатуға болады. Сондай-ақ, кез келген Unix System V құрамына кіретін p-threads стандартын және стандартты процессор аралық байланыс құралдарын пайдалануға болады. Beowulf жобасы да маңызды қосымша әзірлемелерді жүзеге асырды.

Ең алдымен, Linux 2.0 ядросының қайта қаралуын атап өту керек. Кластерлерді құру барысында стандартты Linux желілік құрылғы драйверлері өте тиімсіз болып шықты. Сондықтан, ең алдымен Fast Ethernet және Gigabit Ethernet желілері үшін жаңа драйверлер әзірленді (әзіршелердің көпшілігінің авторы Дональд Беккер), және жеке компьютерлер арасындағы бірнеше параллель желілік қосылымдарды логикалық түрде біріктіру мүмкіндігі қамтамасыз етілді, бұл арзанға мүмкіндік береді. қарапайым жылдамдықпен жергілікті желілер , жоғары жиынтық өткізу қабілеті бар желіні құру.

Кез келген кластердегі сияқты, әрбір түйінде ОЖ ядросының жеке көшірмесі болады. Жақсартулар жеке түйіндерге емес, бүкіл кластердегі процесс идентификаторларының бірегейлігін, сондай-ақ Linux сигналдарын «қашықтан жеткізуді» қамтамасыз етті.

Сонымен қатар, аналармен жұмыс істеу кезінде желі арқылы жүктеу (netbooting) функцияларын атап өткен жөн. Intel тақталарыРR 440FX және оларды басқалармен жұмыс істеу үшін пайдалануға болады аналық платалар AMI BIOS-пен жабдықталған.

Желілік механизмдер өте қызықты мүмкіндіктер береді. виртуалды жад(Network Virtual Memory) немесе DSM (Distributed Shared Memory), бұл процесске түйіндердің ортақ жадының белгілі бір «иллюзиясын» жасауға мүмкіндік береді.

Желі - бұл нәзік мәселе

Жалпы суперкомпьютерлік қосымшаларды, атап айтқанда кластерлік қосымшаларды параллельдеу түйіндер арасында хабар алмасу үшін жоғары өткізу қабілеттілігін және төмен кідірісті қажет ететіндіктен, желі сипаттамалары кластердің өнімділігін анықтайтын параметрлерге айналады. Түйіндер үшін микропроцессорларды таңдау анық - бұл Intel стандартты процессорлары; бірақ кластер топологиясымен, желі түрі және желілік карталарэксперимент жасай аласыз. Дәл осы салада негізгі зерттеулер жүргізілді.

Бүгінгі нарықтағы әртүрлі ДК NIC-ті талдау кезінде тиімді мультикастингті қолдау, үлкен пакет өлшемдерімен жұмыс істеуді қолдау және т.б. сияқты сипаттамаларға ерекше назар аударылды. Beowulf жобасына қатысатын жергілікті желілердің негізгі түрлері: Gigabit Ethernet, Fast. Ethernet және 100-VG AnyLAN. (АТМ технологиясының мүмкіндіктері де белсенді түрде зерттелді, бірақ автордың білуінше, бұл жобаның шеңберінен тыс жасалды.)

Өзіңіз суперкомпьютерді қалай жасауға болады

Beowulf жобасы аясында жүргізілген жұмыстардың нәтижелерін талдағаннан кейін келесі қорытындыға келуге болады: табылған шешімдер стандартты ДК компоненттеріне негізделген жоғары өнімді кластерді дербес жинауға және кәдімгі бағдарламалық қамтамасыз етуді пайдалануға мүмкіндік береді. Ең үлкен даналардың ішінде 40 деректерді өңдеу түйіндерін (бір және қос процессорлы Pentium Pro / 200 МГц тақталар негізінде) және 10 масштабтау түйіндерін (қос процессорлы Pentium Pro /) қамтитын CESDIS-те 50 түйінді кластерді атап өтуге болмайды. 166 МГц тақтасы). Мұндай кластердегі шығындар / ең жоғары өнімділік арақатынасы өте жақсы болып көрінеді. Мәселе қосымшаларды параллельдеу қаншалықты тиімді болуы мүмкін - басқаша айтқанда, ең жоғары өнімділік емес, нақты қандай болады. Жобаға қатысушылар қазір бұл мәселені шешумен айналысуда.

Айта кету керек, қарапайым ДК-ден кластерлерді құру бүгінгі күні ғылыми ортада айтарлықтай сәнге айналуда. Еліміздегі кейбір оқу орындары да осындай кластерлер құруды жоспарлап отыр.

Әртүрлі сыйымдылықтағы немесе әртүрлі архитектуралық компьютерлер кластерге біріктірілгенде, гетерогенді (гетерогенді) кластерлер туралы айтылады. Кластер түйіндерін бір уақытта пайдаланушы жұмыс станциялары ретінде пайдалануға болады. Бұл қажет болмаған жағдайда, түйіндерді айтарлықтай жеңілдетуге және / немесе сөреге орнатуға болады.

Жұмыс станцияларына арналған стандартты операциялық жүйелер пайдаланылады, көбінесе еркін таратылады - Linux / FreeBSD, бірге арнайы құралдарпараллельді бағдарламалауды және жүктемені теңестіруді қолдау. Бағдарламалау, әдетте, хабарламаны беру моделі шеңберінде (көбінесе - MPI). Ол келесі бөлімде толығырақ қарастырылады.

Кластерлік архитектураның даму тарихы.

DEC бірінші болып 1983 жылы кластерлік жүйе концепциясын жариялады, оны бір ақпаратты өңдеу блогын білдіретін өзара байланысты компьютерлер тобы ретінде анықтады.

Параллель жүйелердің бүкіл класына атау берген алғашқы жобалардың бірі - Беовульф кластерлері - NASA-ның Годдард ғарыштық ұшу орталығында Жер және ғарыш туралы ғылымдар жобасын қажетті есептеу ресурстарымен қолдау үшін пайда болды. Beowulf жобасы 1994 жылдың жазында басталды, көп ұзамай Intel 486DX4 / 100 МГц процессорларына негізделген 16 процессорлық кластер жиналды. Әрбір түйінде 16 МБ жедел жады және 3 Ethernet желі адаптері болды. Бұл конфигурацияда жұмыс істеу үшін қол жетімді желілік карталар арасында трафикті тарататын арнайы драйверлер әзірленді.

Кейінірек HIVE - Жоғары параллельді біріктірілген виртуалды орта кластері GSFC-де құрастырылды, оның құрылымы суретте көрсетілген. 2. Бұл кластер 332 процессоры мен екі арнайы хосты бар E, B, G және DL төрт ішкі кластерден тұрады. Бұл кластердегі барлық түйіндер RedHat Linux жүйесінде жұмыс істейді.

1998 жылы астрофизик Майкл Уоррен және теориялық астрофизикалық топтың басқа ғалымдары Лос-Аламос ұлттық зертханасында Avalon суперкомпьютерін құрастырды, ол Alpha 21164A процессорларына негізделген Linux кластері болып табылады. тактілік жиілік 533 МГц. Бастапқыда Avalon 68 процессордан тұрды, кейін ол 140-қа дейін кеңейтілді. Әрбір түйінде 256 МБ жедел жады, 3 ГБ қатты диск және Fast Ethernet желі адаптері бар. Avalon жобасының жалпы құны 313 мың долларды құрады, ал LINPACK тестінде көрсеткен өнімділігі – 47,7 GFLOPS, оған 152 процессорлы IBM RS/6000 SP жанындағы Top500 тізімінің 12-ші басылымында 114-орынға шығуға мүмкіндік берді. жүйесі. Сол 1998 жылы Supercomputing'98 өнімділігі жоғары есептеулер саласындағы ең беделді конференцияда Avalon жасаушылары «Avalon: An Alpha/Linux кластері 150 мың долларға 10 Гфлопқа жетеді» баяндамасын ұсынды, ол бірінші жүлдені алды. «Үздік баға/өнімділік арақатынасы» номинациясы.

Ағымдағы жылдың сәуір айында Корнелл биомедициналық зерттеулер университетінде AC3 жобасы аясында екі Pentium III / 733 МГц процессорлары және әрқайсысында 2 ГБ жедел жады бар және жалпы дискісі бар 64 түйіннен тұратын Velocity + кластері орнатылды. жады 27 ГБ. Түйіндер Windows 2000 астында жұмыс істейді және Giganet cLAN желісі арқылы қосылады.

«Сөрелердегі қораптар» жобасы 1997 жылдың сәуір айында АҚШ Ұлттық денсаулық институтында жүзеге асырылды және Gigabit Ethernet технологиясын байланыс құралы ретінде пайдалану қызықты. Бастапқыда кластер екі Pentium Pro / 200 МГц процессорлары бар 47 түйіннен, 128 Мбайт жедел жадыдан және әрбір түйінде 1,2 ГБ дискіден тұрды. 1998 жылы жүзеге асырылды

жобаның келесі кезеңі LoBoS2 болды, оның барысында түйіндер кластерлеуді сақтай отырып, жұмыс үстеліне түрлендірілді. LoBoS2 енді екі Pentium II / 450 МГц процессоры, 256 МБ жедел жады және 9 ГБ диск жады бар 100 есептеу түйінінен тұрады. Кластерге қосымша 4 басқару компьютері сыйымдылығы 1,2 ТБ жалпы RAID массивімен қосылған.

Соңғы кластерлік әзірлемелердің бірі - AMD Presto III суперкомпьютері, ол 78 Athlon процессорларының Beowulf кластері болып табылады. Компьютер Токио технологиялық институтында орнатылған. Бүгінгі күні AMD Linux жүйесінде жұмыс істейтін Beowulf кластерлерінде 8 суперкомпьютер құрастырды.

IBM кластерлері

RS / 6000

IBM кластерленген және қолжетімділігі жоғары кластерленген мультипроцессор / 6000 (HACMP / 6000) бағдарламалық жасақтамасында жұмыс істейтін RS / 6000 негізіндегі еркін байланысқан жүйелердің бірнеше түрлерін ұсынады.

Кластер түйіндері HACMP / 6000 құрамына кіретін құлыптау менеджерінің мүмкіндіктерін пайдалана отырып, логикалық және физикалық ресурстарға қолжетімділікті бөлісе отырып, параллель жұмыс істейді.

1991 жылы жарияланғаннан бері HACMP / 6000 өнімі үздіксіз дамудан өтті. Ол параллельді ресурс менеджерін, бөлінген құлыптау менеджерін және параллель логикалық көлем менеджерін қамтиды, соңғысы бүкіл кластер бойынша жүктемені теңестіруді қамтамасыз етеді. Кластердегі түйіндердің максималды саны сегізге дейін өсті. Қазіргі уақытта кластерде процессорлар санының ұлғаюымен өнімділіктің сызықтық өсуін қамтамасыз ететін Data Crossbar Switch технологиясы арқылы құрастырылған симметриялық көп өңдеуі бар түйіндер бар.

RS / 6000 кластерлері Ethernet, Token Ring немесе FDDI LAN желілерінде құрастырылған және оларды конфигурациялауға болады әртүрлі жолдаржоғары сенімділікті қамтамасыз ету тұрғысынан:

  • Ыстық күту режимі немесе қарапайым істен шығу. Бұл режимде белсенді түйін қолданбалы тапсырмаларды орындайды, ал күту режимі белсенді түйін сәтсіз болғанда ауысу қажет болған жағдайда тоқтатылуы мүмкін маңызды емес тапсырмаларды орындай алады.
  • Симметриялық резерв. Ыстық күту режиміне ұқсас, бірақ шебер мен күту режимінің рөлдері бекітілмеген.
  • Өзара қабылдау немесе жүкті бөлісу режимі. Бұл режимде кластердегі әрбір түйін кластердегі кез келген басқа түйінде іске қосылатын тапсырмаларды «жүктей» алады.

IBM SP2

Орнату саны бойынша IBM SP2 ірі TOP500 суперкомпьютерлерінің тізімінде (141 инсталляция, және барлығы әлемде жалпы саны 86 мыңнан астам түйіндері бар 8275 осындай компьютерлер бар. Бұл суперкомпьютерлер архитектура- қуатты орталық қосқышты пайдаланатын кластерлік тәсіл IBM бұл тәсілді көптеген жылдар бойы қолданады.

Жалпы архитектура SP2

SP2 архитектурасына шолу суретте келтірілген. 1. Оның архитектурасының негізгі ерекшелігі түйіндерді бір-біріне қосу үшін аз кідіріспен жоғары жылдамдықты қосқышты пайдалану болып табылады. Тәжірибе көрсеткендей, бұл өте қарапайым болып көрінетін схема өте икемді болып шықты. Алдымен SP2 түйіндері бір процессорлы болды, кейін SMP түйіндері пайда болды.

Іс жүзінде барлық мәліметтер түйіндердің құрылымында жасырылған. Сонымен қатар, түйіндердің түрлері әртүрлі, тіпті көрші түйіндердегі процессорлар да әртүрлі болуы мүмкін. Бұл қамтамасыз етеді

конфигурацияларды таңдауда үлкен икемділік. Есептеу жүйесіндегі түйіндердің жалпы саны 512-ге жетуі мүмкін. SP2 түйіндері іс жүзінде тәуелсіз компьютерлер болып табылады және олардың тікелей аналогтарын IBM өз аттарымен сатады. Мұның ең жарқын мысалы - Power3-II микропроцессорлары бар RS / 6000 44P-270 төрт процессорлы SMP сервері, оның өзін орта класты компьютер немесе тіпті шағын суперкомпьютер ретінде жіктеуге болады.

SP2 түйіндерінде орнатылған микропроцессорлар екі архитектуралық сызық бойынша дамыды: Power - Power2 - Power3 - Power3-II және PowerPC желісі бойынша 332 МГц тактілік жиілігі бар 604e үлгісіне дейін.

SP2 үшін дәстүрлі болып SMP архитектурасы бар жұқа түйін және кең түйін болып табылады. Оларды PowerPC 604e (екіден төртке дейін процессорлар) және Power3-II (төртке дейін) орнатуға болады. Түйіндердің негізгі жадының сыйымдылығы 256 МБ-тан 3 ГБ-қа дейін (Power3-II пайдаланған кезде - 8 ГБ-қа дейін). Жіңішке және кең түйіндер арасындағы негізгі айырмашылықтар енгізу-шығару ішкі жүйесіне қатысты. Кең түйіндер қуаттырақ енгізу/шығару мүмкіндіктерін қажет ететін қолданбаларға арналған, он PCI слоттары (үш 64-битті қоса) жіңішке түйіндердегі екеуімен салыстырғанда. Тиісінше, кең түйіндердегі дискі құрылғыларына арналған орнату орындарының саны көбірек.

Коммутатордың жылдамдығы төмен кідірістермен сипатталады: 1,2 мс (80 түйіннен 2 мс дейін). Бұл қазіргі Beowulf Linux кластерлеріндегіден жақсырақ. Бір портқа ең жоғары өткізу қабілеті: бір бағытта 150 МБ/с (яғни, 300 МБ/с толық дуплекс). SP2 түйіндерінде орналасқан коммутатор адаптерлерінің өткізу қабілеттілігі бірдей. IBM сонымен қатар кідіріс пен өткізу қабілеттілігінде тамаша нәтижелерді атайды.

Ең қуатты SP2 түйіндері - Жоғары түйіндер. Жоғары түйін алтыға дейін қосылған енгізу/шығару кеңейту құрылғылары бар есептеу түйінінен тұратын кешен. Бұл түйінде сонымен қатар SMP архитектурасы бар және 222 немесе 375 МГц тактілік жиілігі бар 8 Power3 процессорын қамтиды.

Бұған қоса, түйіннің бұл түрі қосылған енгізу-шығару тақтасын қамтиды аналық плата... Енгізу-шығару тақтасында деректер тасымалданатын екі SABER симметриялық логикалық блоктары бар сыртқы құрылғыларсолай

жетектер мен телекоммуникациялық жабдық сияқты. Енгізу/шығару тақтасында төрт 64 биттік PCI ұясы және бір 32 бит (33 МГц) ұясы және біріктірілген UltraSCSI, 10/100 Мбит/с Ethernet, үш сериялық және бір параллель контроллер бар.

Linpack параллельді эталондарында жоғары түйіндер мен Power3-II / 375 МГц микропроцессорлардың пайда болуымен IBM SP2 жүйелері 723,4 GFLOPS өнімділігіне қол жеткізді. Бұл нәтижеге 176 түйін (704 процессор) арқылы қол жеткізілді. 512 түйінді орнатуға болатынын ескере отырып, бұл нәтиже жаппай өндірілген IBM SP2 1 TFLOPS белгісіне ықтимал жақын екенін көрсетеді.

Sun Microsystems кластерлік шешімдері

Sun Microsystems SPARCserver 1000 және SPARCcenter 2000 мультипроцессорлы SMP серверлерін түйін ретінде пайдаланатын SPARCclaster PDB Server өніміне негізделген кластерлік шешімдерді ұсынады. Ең көбі SPARCserver 1000 сегізге дейін процессорларды, ал SPARCcenter 2000 SuperPARC20 процессорларына дейін болуы мүмкін. Негізгі пакет келесі құрамдастарды қамтиды: SPARCserver 1000 / 1000E немесе SPARCcenter 2000 / 2000E негізіндегі екі кластер түйіні, екі диск массиві SPARCstorage массиві және байланысқа арналған қайталанатын аппараттық құралдары бар кластер жинағы, кластерді басқару консолі, PDBPARlac бағдарламасының Claster басқару консолі. және кластерлік қызмет бумасы.

Жоғары өнімділікті және коммуникациялардың қолжетімділігін қамтамасыз ету үшін кластер барлық деректер магистральдарының толық резервтеуін қолдайды. Кластер түйіндері өткізу қабілеті 100 Мбит/с болатын SunFastEthernet сілтемелері арқылы қосылады. Дискінің ішкі жүйелерін қосу үшін өткізу қабілеті 25 Мбит/с болатын талшықты-оптикалық талшықты арна интерфейсі пайдаланылады, ол дискілер мен түйіндерді 2 км-ге дейінгі қашықтықта бір-бірінен алып тастауға мүмкіндік береді. Түйіндер, түйіндер және дискілік ішкі жүйелер арасындағы барлық байланыстар аппараттық деңгейде қайталанады. Кластерлік жабдық, бағдарламалық қамтамасыз ету және желілік жүйеде бір сәтсіздік немесе ақаулық бүкіл жүйені жарамсыз ететін орын жоқтығын қамтамасыз етеді.

Университет жобалары

Кентукки университетінің қызықты дамуы – KLAT2 кластері (Kentucky Linux Athlon Testbed 2). KLAT2 жүйесі AMD Athlon / 700 МГц процессорлары бар дискісіз 64 түйіннен және әрқайсысында 128 МБ жедел жадыдан тұрады. Бағдарламалық құрал, компиляторлар және математикалық кітапханалар (SCALAPACK, BLACS және ATLAS) 3DNow тиімді пайдалану үшін нақтыланды! Өнімділікті жақсарту үшін AMD процессорлары. «Тегіс көршілес желі» (FNN) деп аталатын желілік шешім де айтарлықтай қызығушылық тудырады. Әрбір түйінде төрт Smartlink Fast Ethernet NIC бар және түйіндер тоғыз 32 портты қосқыш арқылы қосылған. Сонымен қатар, кез келген екі түйін үшін әрқашан қосқыштардың біреуі арқылы тікелей байланыс болады, бірақ бір қосқыш арқылы барлық түйіндерді қосудың қажеті жоқ. AMD архитектурасы мен FNN топологиясы үшін бағдарламалық жасақтаманы оңтайландыру GFLOPS үшін 650 доллардың рекордтық баға/өнімділік қатынасына қол жеткізді.

Кластерді бөлімдерге бөлу идеясы Аргонна ұлттық зертханасында жүзеге асырылған Чиба Сити жобасында қызықты түрде жүзеге асырылды. Негізгі бөлімде әрқайсысында 256 есептеу түйіндері бар

оның ішінде екі Pentium III / 500 МГц процессоры, 512 Мбайт жедел жады және 9 ГБ сыйымдылығы бар жергілікті диск бар. Есептеу бөлімінен басқа, жүйе визуализация бөлімін қамтиды (32 дербес компьютерлер Matrox Millenium G400 графикалық карталары, 512 МБ жедел жады және 300 ГБ дискілері бар IBM Intellistation, сақтау бөлімі (Xeon / 500 МГц процессорлары және 300 ГБ дискісі бар 8 IBM Netfinity 7000 сервері) және басқару бөлімі (12 IBM Netfinity 500 компьютері) ... Олардың барлығы параллельді қолданбаларды қолдау үшін пайдаланылатын Myrinet желісімен, сонымен қатар басқару және қызмет көрсету мақсатында Gigabit Ethernet және Fast Ethernet желілерімен қосылған. Барлық секциялар 32 компьютері бар «қалаларға» (қалаға) бөлінген. Олардың әрқайсысында жергілікті жерде өзінің «қаласына» қызмет көрсететін, сервистік желідегі жүктемені азайтып, жергілікті ресурстарға жылдам қол жеткізуді қамтамасыз ететін өз «әкімі» бар.

Ресейдегі кластерлік жобалар

Ресейде өнімділігі жоғары есептеуіш ресурстарға әрқашан жоғары қажеттілік болды, ал кластерлік жобалардың салыстырмалы түрде төмен құны біздің елімізде мұндай шешімдерді кеңінен қолдану үшін елеулі серпін болды. Алғашқылардың бірі болып IVViBD жүйесінде жинақталған және Myrinet желісі арқылы қосылған сегіз Pentium II процессорларынан тұратын «Паритет» кластері пайда болды. 1999 жылы NICEVT-те SCI желісіне негізделген кластерлік шешім сынақтан өтті, ол шын мәнінде Ресейде параллель жүйелерді құру үшін SCI технологиясын қолданудың пионері болды.

Мәскеу мемлекеттік университетінің Ғылыми-есептеу орталығында орнатылған SCI байланыс желісіне негізделген жоғары өнімді кластер. RCC кластері Intel Pentium III / 500 МГц негізіндегі 12 қос процессорлы Excimer серверлерін қамтиды, жалпы ең жоғары өнімділігі секундына 12 миллиард операцияны құрайтын жалпы саны 24 процессоры бар. Жүйенің жалпы құны шамамен 40 мың долларды құрайды немесе 1 GFLOPS үшін шамамен 3,33 мың.

Кластердің есептеу түйіндері екі өлшемді 3x4 торда бір бағытты SCI желісі арналары арқылы қосылады және бір уақытта көмекші Fast Ethernet желісі және 3Com Superstack қосқышы арқылы орталық серверге қосылады. SCI желісі кластердің өзегі болып табылады, бұл жүйені тапсырмалардың кең класына бағытталған суперкомпьютер класындағы бірегей есептеу құралына айналдырады. Пайдаланушы қолданбаларында SCI желісі бойынша деректер алмасудың максималды жылдамдығы 80 МБ/с-тан асады, ал кідіріс уақыты шамамен 5,6 мкс құрайды. Бұл есептеу кластерін құру кезінде Dolphin Interconnect Solutions және Scali Computer (Норвегия) әзірлеген интеграцияланған Wulfkit шешімі пайдаланылды.

Кластерде параллельді бағдарламалаудың негізгі құралы MPI (Message Passing Interface) ScaMPI 1.9.1. LINPACK тестінде 16000x16000 матрицасы бар сызықтық теңдеулер жүйесін шешу кезінде нақты алынған өнімділік 5,7 GFLOPS-тен жоғары болды. NPB пакетінің сынақтарында кластердің өнімділігі салыстырмалы, кейде тіпті процессорлары бірдей Cray T3E отбасының суперкомпьютерлерінің өнімділігінен асып түседі.

Мәскеу мемлекеттік университетінің Ғылыми-есептеу орталығының есептеу кластерін қолданудың негізгі бағыты іргелі ғылыми зерттеулер мен оқу процесін қолдау болып табылады.

Басқа қызықты жобалардың қатарында Fast Ethernet технологиясы негізінде Санкт-Петербург университетінде жүзеге асырылған шешімді атап өту керек: жиналған кластерлерді толыққанды тәуелсіз аудиториялар ретінде де, бір мәселені шешетін бір есептеуіш бірлік ретінде де пайдалануға болады. Самара ғылыми орталығында

Alpha және Pentium III процессорлары негізіндегі компьютерлерді қамтитын гетерогенді есептеу кластерін құру жолын ұстанды. Альфа процессорлары мен Myrinet желісіне негізделген қондырғы Петербург техникалық университетінде есептеу түйіндерінде жергілікті дискілерді қолданбай орнатылады. Уфа мемлекеттік авиациялық техникалық университеті он екі Альфа станциясы, Fast Ethernet желісі және Linux ОЖ негізіндегі кластерді жобалауда.

Мақала ұнады ма? Достарыңызбен бөлісіңіз!
Бұл пайдалы болды ма?
Иә
Жоқ
Пікіріңізге рахмет!
Бірдеңе дұрыс болмады және сіздің дауысыңыз есептелмеді.
Рақмет сізге. Сіздің хабарламаңыз жіберілді
Мәтіннен қате таптыңыз ба?
Оны бөлектеңіз, басыңыз Ctrl + Enterжәне біз бәрін түзетеміз!