Оқулық Қазақстан Республикасы Білім және ғылым министрлігі бекіткен Алматы, 2011



Pdf көрінісі
бет23/121
Дата31.08.2022
өлшемі2,81 Mb.
#38343
түріОқулық
1   ...   19   20   21   22   23   24   25   26   ...   121
Байланысты:
duisembiev-parallel-esep

компьютерлер. Барлық процессорлар ортақ адрестік кеңістікте жұмыс 
істейді: егер бір процессор 1050 адресі бойынша, сӛзде 61 мәнін жазса, онда 
басқа процессор 1050 адресінде орналасқан сӛзді оқып, 61 мәнін қабылдап 
алады.
Екінші класс – бұл таратылған жадылы компьютерлер, кей кезде 
оларды мультикомпьютерлі жүйелер деп те атайды (13 сурет).
Процессор 
Процессор 
Процессор 
К о м м у н и к а ц и я л ы қ о р т а 
... 


39 
13 сурет. Таратылған жадылы параллель компьютерлер 
Әрбір есептеу торабы ӛзінің процессорымен, жадысымен, енгізу/шығару 
ішкі жүйелерімен және операциялық жүйесімен бір бүтін компьютер болып 
саналады. Бұл жағдайда, егер бір процессор 1024 адресі бойынша 79 мәнін 
жазса, онда сол адрес бойынша басқа процессордың не оқығанына әсері жоқ, 
себебі, олардың әрқайсысы ӛз адрестік кеңістігінде жұмыс істейді. 
Ортақ жадылы компьютерлерге Symmetric Multi Processors (SMP) 
класының 
барлық 
жүйелері 
жатады. 
SMP 
жүйесінде 
бірнеше 
процессорлардан басқасынан бәрі бір экземплярдан: бір жады, бір 
операциялық жүйе, бір енгізу/шығару бағыныңқы жүйесі. Архитектураның 
аталуындағы «симметриялық» сӛзі, әрбір процессор басқа процессорлар 
атқара алатын барлық қызметті атқара алады дегенді білдіреді.
Қазіргі уақытта, кӛбіне SMP-ны ортақ жадылы компьютерлер үшін 
альтернативті атау ретінде қарастырады. Бұған SMP-ның мүмкін болатын екі 
шартбелгіні ашу нұсқасы да қосымша демеу болды: Symmetric Multi 
Processors және Shared Memory Processors. 
Бұл екі класс ортақ және таратылған жадылы компьютерлер кластары 
кездейсоқ пайда болған жоқ. Олар параллель есептеудің негізгі екі есебін 
кӛрсетеді. 
Ең бірінші мәселе максимальді өнімділік беретін есептеу жүйесін құру 
болып табылады. Бұны таратылған жадылы компьютер кӛмегімен жеңіл 
шешуге болады. Қазіргі уақытта бірыңғай коммуникациялық орта аясында 
бірнеше мыңдаған есептеу тораптарын біріктіретін қондырғыларды 
пайдалану жүзеге асуда. Тіпті Интернеттің ӛзін миллиондаған есептеу 
тораптарын біріктіріп отырған таратылған жадылы ең үлкен параллельді 
компьютер деп қарауға болады. Бірақ, осындай жүйелерді қалай тиімді 
пайдалануға болады? Параллель жұмыс істейтін процессорлардың ара-
қатынасына жұмсалатын шығындарды қалай жоюға болады? Параллель 
бағдарламаларды құруды қалай ықшамдауға, жеңілдетуге болады? Тәжірибе 
жүзінде осындай жүйелерді бағдарламалаудың бірден-бір әдісі - бұл хабар 
алмасу жүйесін пайдалану, мысалы PVM немесе MPI, бірақ әрдайым оңай 
бола бермейтінін ескеру керек. 
Осыдан келіп екінші мәселе туындайды - параллельді есептеу жүйелері 
үшін тиімді бағдарламалық қамтамасыздандыруды құрудың әдістерін іздеу
Процессор 
Процессор 
Процессор 
К о м м у н и к а ц и я л ы қ о р т а 
... 
Жады 
Жады 
Жады 


40 
Бұл мәселе ортақ жадылы компьютерлер үшін біраз жеңіл шешімін 
табады. Ортақ жады арқылы процессорлар арасындағы мәлімет алмасудағы 
қосымша шығындар минимальды болады, ал мұндай жүйелерді 
бағдарламалау технологиясы қарапайым болып табылады. Мұндағы мәселе 
басқада. Технологиялық себептерге байланысты, ортақ жедел жадылы, саны 
кӛп процессорларды біріктіру мүмкін болмайды, сондықтан мұндай 
жүйелерде қазіргі кезде ӛте үлкен ӛнімділік ала алмайсың. 
Байқасақ, екі жағдайда да процессорларды жады модулдерімен немесе 
процессорларды ӛзара байланыстыратын коммутация жүйесі кӛп 
қиындықтар туғызады. Мысалға, 32 процессор жалпы жедел жадтқа тең 
қатынас жасай алады немесе 1024 процессордың әрқайсысы ӛзара байланыса 
алады деу әрине оңай, бірақ тәжірибе жүзінде мұны қалай жүзеге асыру 
керек? Енді компьютерлерде қатынастық жүйелерді ұйымдастырудың 
кейбір әдістерін қарастырайық. 
Мультипроцессорлы 
жүйелерді 
ұйымдастырудың 
ең 
қарапайым 
әдістерінің бірі процессорлар да, жады да қосылатын жалпы шинаны 
қолдануға негізделген (14 сурет). 
Шинаның ӛзі қандай да бір тізбектер санынан тұрады. Бұл тізбектер, 
процессорлар мен жады арасында адрестер, деректер және басқарушы 
сигналдармен алмасу үшін қажет болып табылады. 
Бірнеше процессорлардың жадымен бір уақытта қатынас жасауын 
болдырмау үшін, шинаны иеленген құрылғының шинаға дара иелік жасауына 
кепіл болатын арбитраждың қандай да бір сызбасы пайдаланылады. 
Осындай жүйелерде туындайтын негізгі қиындық (мәселе) – шинадағы 
құрылғылар санының шамалы ӛсуі (4-5), оны тез арада «тар орынға» 
айналдырады, ал ол ӛз кезегінде жадпен деректер алмасу кезіндегі айқын 
бӛгелістерге және жалпы жүйе ӛнімділігінің апаттық құлдырауына әкеліп 
соғады. 
Бұдан да қуатты жүйелер құру үшін басқа жолдар іздеу қажет. Соның бірі 
– жадыны тәуелсіз модульдерге бӛлу және әртүрлі процессорлардың басқа 
модульдарға бір уақытта қатынау мүмкіндігін қамтамасыз ету. Мұнда 
шешімдер кӛп болуы мүмкін, дербес жағдайда, мысалы, матрицалық 
коммутаторды пайдалану. Процессорлар және жады модульдері 15-ші 
суретте кӛрсетілгендей байланысады. Тізбектер қиылысында процессорлар 
және жады модульдері арасында ақпарат алмасуға рұқсат ететін немесе 
ақпарат алмасуға тыйым салатын элементарлық нүктелі айырып/қосқыштар 
орналасқан. 
Мұндай 
ұйымдастырудың 
басты 
артықшылығы, 
процессорлардың бір мезгілде, жадының әртүрлі модульдерімен жұмыс істей 
алу мүмкіндігі. Әрине, егер екі процессор бір жады модулімен жұмыс істегісі 
келсе, онда екеуінің біреуі бұғатталады. Матрицалық коммутаторлардың 
кемшілігі – қажетті құрылғының үлкен кӛлемді болуы, мысалы, n 
процессорларды n жады модульдерімен байланыстыру үшін n

элементарлы 
айырып/қосқыштар қажет. Кӛп жағдайларда бұл ӛте қымбат шешімдерге 


41 
жатқызылады, сондықтан құрастырушыларды басқа жолдарды іздеуге 
итермелейді.
14 сурет. Ортақ шиналы мультипроцессорлық жүйе. 
15 сурет. Матрицалық коммутаторлардағы
мультипроцессорлық жүйе. 


Достарыңызбен бөлісу:
1   ...   19   20   21   22   23   24   25   26   ...   121




©emirsaba.org 2024
әкімшілігінің қараңыз

    Басты бет