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



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

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


46 
Егер қолданушылар бағдарламалары компьютердің барлық біріккен 
физикалық жадысына, ортақ адрестік жады деп қарайтын механизм құрылса 
онда барлығы кӛп жеңіл болар еді.
Ӛткен ғасырдың 70-ші жылдарының соңында бірінші NUMA –
компьютерін құрастырған, Cm
*
жүйесін құрастырушылар осы жолмен 
жүрген. Бұл компьютер бір-бірімен кластер аралық шиналар арқылы 
байланысқан кластерлер жиынынан тұрады.
Әрбір кластер ӛзара локальді шиналар (19-сурет) арқылы байланысқан 
процессор, жады контроллері, жады модулі, кейбір енгізу/шығару 
құрылғыларын ӛзіне біріктіреді. Егер процессорға оқу немесе жазу 
операциясын орындау қажет болса, ол ӛзінің жады контроллеріне қажетті 
адреспен сұраныс жібереді. Контроллер адрестің үлкен разрядтарын талдау 
арқылы, қажетті мәліметтердің қай модульде сақтаулы екенін анықтайды. 
Егер адрес локальді болса, онда сұраныс локальді шинаға қойылады, кері 
жағдайда, қашықтағы кластер үшін арналған сұраныс кластер аралық шина 
арқылы жіберіледі. Бұл режимде жадының бір модулінде сақталатын 
бағдарлама жүйенің кез-келген процессорында орындалады. Жалғыз ғана 
айырмашылық – орындалу жылдамдығында. Барлық локальді сілтемелер 
қашықтағыларына қарағанда тез ӛңделеді. Сондықтан бағдарлама сақталған 
кластер процессоры оны басқа процессорларға қарағанда бірнеше есе 
жылдамырақ орындайды.
Осы ерекшелігіне қарай мұндай компьютерлер класы – жадыға 
біртекті емес қатынас компьютерлері деп аталады. Осы мағынада, 
классикалық SMP - компьютерлері UMA (Uniform Memory Access) 
архитектурасымен қамтылған, ондағы әрбір процессор кез келген жады 
модуліне бірдей қатынас жасауы қамтамасыз етілген деп айтылады.
19 сурет. Сm* есептеу жүйесінің сызбасы 
NUMA-компьютерінің тағы бір мысалы максималды конфигурацияда 
256 процессорды біріктірген BBN Butterfly компьютері болды (20 - сурет). 
Локальді шина
Локальді жады
Жады контроллері 
К
л
а
с
т
е
р
а
р
а
л
ы
қ
ш
и
н
а


47 
Компьютердің әрбір есептеу торабы процессордан, локальді желіден, жады 
контроллерінен тұрады. Ол сұраныстың локальді жадыға тиісті немесе оны 
Butterfly коммутаторы арқылы қашықтағы торапқа жіберу қажет екендігін 
анықтайды.
Бағдарламашының кӛзқарасы бойынша жады ортақ жалпы жады, 
ондағы қашыққа сілтемелер локальді сілтемелерден біршама ұзақ іске 
асырылады (шамамен 6мкс қашыққа, 2мкс локальді үшін).
Әрине, үлкен NUMA – компьютерлерін жасау жолымен алға қарай 
батыл жүре беруге болар еді, егер күтпеген бір проблема болмаса – ол жеке 
процессорлардың кэш-жадысы. Кӛп процессорлы жүйелер үшін, жеке 
процессорлардың жұмысын едәуір жылдамдатуға кӛмектесетін кэш-жады –
тар орын болып табылады. Алғашқы NUMA – компьютерлерінің 
процессорларында кэш-жады болмағандықтан, мұндай мәселелер де туған 
жоқ болатын. Бірақ қазіргі заманғы микропроцессорлар үшін кэш-жады 
ажырамас құрамдас бӛлік болып табылады. Біздің бұл мәселеге алаңдау 
себебімізді түсіндіру қиын емес. P
1
процессоры q ұяшығында х мәнін 
сақтаған делік, содан кейін Р
2
процессоры дәл сол q ұяшығындағы ақпаратты 
оқығысы келсін. Сонда Р


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




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

    Басты бет