лек 1.pptx
- Количество слайдов: 20
ПАРАЛЛЕЛЬДІ ЕСЕПТЕУДІ ҰЙЫМДАСТЫРУ, 1 -ЛЕКЦИЯ Параллельді аппараттық жабдықтау архитектурасы және параллельді бағдарламалау модельдері
Уәждеме (мотивация) Сұрақтар Жауап тар 10. 02. 2018 ПАРАЛЕЛЛЬДІ ЕСЕПТЕУДІ ҰЙЫМДАСТЫРУ. 1 ЛЕКЦИЯ 2
Дәрістің нәтижесі • Параллельді аппараттық жабдықтау архитектурасы • Параллельді бағдарламалау модельдері • Өзіңнің қосымшаңа ең жақсы параллельді бағдарламалау модельін таңдау 10. 02. 2018 ПАРАЛЕЛЛЬДІ ЕСЕПТЕУДІ ҰЙЫМДАСТЫРУ. 1 ЛЕКЦИЯ 3
Концепциялар Параллель процесстерінің концепциялары: ◦ Конвейерлік -> векторлы есептеу ◦ Функцияналды параллелизим -> қазіргі процессор технологиясы ◦ Біріккен инструкциялар -> мысалы көбейту-қосу бір инструкция ретінде қаралады ◦ Мультижіптер ◦ Массивті-процесс өңдеу Гибридты ◦ Мультипроцессор -> Ортақ жадылы архитектура ◦ Мультикомпьютерлер -> үлестірілген жадылы лар 10. 02. 2018 ПАРАЛЕЛЛЬДІ ЕСЕПТЕУДІ ҰЙЫМДАСТЫРУ. 1 ЛЕКЦИЯ 4
Негізгі параллельді аппараттық жабдықтаудың архитектуралары Ортақ жадылы - SMP (symmetric multiprocessing) = симметриялы көп процессорлы өңдеу Үлестірілген Жадылы - DMP (distributed memory parallel)= Үлестірілген жадылы параллельдеу Иерархиялық жадылы жүйелер - Екі концепцияның бірігуі 10. 02. 2018 ПАРАЛЕЛЛЬДІ ЕСЕПТЕУДІ ҰЙЫМДАСТЫРУ. 1 ЛЕКЦИЯ 5
Мультипроцессор – ортақ жадылы § Барлық орталық процессорлар (CPU) барлық жады банкіне бірдей жылдамдықпен қолжетімді § Біркелкі жадылық қол жетімділік (UMA) § Симметриялы мультипроцессорлы өңдеу (SMP) § Желілік типтер, § Crossbar -> әр CPU-дың тәуелсіз қол жетімділігі бар § BUS -> бір CPU басқа CPU-лардың жадыға қолжетімділігін блоктап тастайды 10. 02. 2018 ПАРАЛЕЛЛЬДІ ЕСЕПТЕУДІ ҰЙЫМДАСТЫРУ. 1 ЛЕКЦИЯ 6
Мультикомпьютерлер – үлестірілген жады § Түйіндер өзара байланысу арқылы жұптасады § Әр CPU: - өзінің жеке жадысына жылдам қол жеткізеді - бірақ басқа CPU-ға ақырынырақ қол жеткізеді • Біркелкі жадылық қол жетімді емес (NUMA) • Әртүрлі желілік типтер. BUS, torus, crossbar 10. 02. 2018 ПАРАЛЕЛЛЬДІ ЕСЕПТЕУДІ ҰЙЫМДАСТЫРУ. 1 ЛЕКЦИЯ 7
Гибридты архитектуралар Қазіргі заманғы жоғары өнімді есептеу (HPC) жүйелері SMP түйіндердің кластері болып саналады • Әр түйіннің ішінде SMP • Түйіндердің арасында DMP 10. 02. 2018 ПАРАЛЕЛЛЬДІ ЕСЕПТЕУДІ ҰЙЫМДАСТЫРУ. 1 ЛЕКЦИЯ 8
Дәрістің нәтижесі • Параллельді аппараттық жабдықтау архитектурасы • Параллельді бағдарламалау модельдері • Өзіңнің қосымшаңа ең жақсы параллельді бағдарламалау модельін таңдау 10. 02. 2018 ПАРАЛЕЛЛЬДІ ЕСЕПТЕУДІ ҰЙЫМДАСТЫРУ. 1 ЛЕКЦИЯ 9
Не үшін? • Параллельді аппараттық архитектураны не үшін пайдалануым қажет? • Мүмкін жауаптар: ü Процессор жауапты лезде бере алмайды üМурдың заңы • Чиптағы транзистордың саны шамамен әр 18 ай сайын еселенеді • → болашақта чипындағы процессорлардың саны өседі üСіздің иелігіңізде • Жұмыс станциялардың желісі бар • Кластерлер жүйесі üАуқымды жадыны қажет ететін ауқымды қосымша 10. 02. 2018 ПАРАЛЕЛЛЬДІ ЕСЕПТЕУДІ ҰЙЫМДАСТЫРУ. 1 ЛЕКЦИЯ 10
Абстракт модель Нақты жағыдай Физикалық модель Математикалық модель Сұрақтар Жауаптар Сандық схема Қосымшаның бағдарламасы Азын аулақ паралелльді бағдарламалау моделі MPI | HPF | Open. MP Аппараттық жабдықтау архитектурасы 10. 02. 2018 ПАРАЛЕЛЛЬДІ ЕСЕПТЕУДІ ҰЙЫМДАСТЫРУ. 1 ЛЕКЦИЯ 11
Параллелизациялау стратегиясы – аппараттық жабдықтау ресурстар • Есептеудің екі негізгі русурстары: Ø Процессор Ø Жады • Параллелизациялау дегеніміз Ø Процессорларға жұмысты үлестіру Ø Деректерді үлестіру (егер жады үлестірілген болса) Және Ø Үлестірілген жұмысты синхронизациялау Ø Жергілікті процессордың алыстағы деректермен қарым-қатынасы • Бағдарламалау моделі келесідей біріккен әдістерді ұсынады Ø Жұмысты және деректі үлестіру, синхронизация және қарым-қатынасы 10. 02. 2018 ПАРАЛЕЛЛЬДІ ЕСЕПТЕУДІ ҰЙЫМДАСТЫРУ. 1 ЛЕКЦИЯ 12
Жұмысты және деректі үлестіру Жұмыстың декомпозициялануы • Циклды декомпозициялау негізінде Деректің декомпозициялануы • Деректің жергілікті процессоры жергілікті деректердің үлесіне арналған Жұмысты істейді Домейн декомпозициялануы § Жұмыстың және жеректің декомпозоция -лануы жоғары денгейдегі модельде жүзеге асады 10. 02. 2018 ПАРАЛЕЛЛЬДІ ЕСЕПТЕУДІ ҰЙЫМДАСТЫРУ. 1 ЛЕКЦИЯ 13
Синхронизация • Синхронизация Ø Қажет Ø Бірақта • • 10. 02. 2018 Кей процессорларда идиялды уақытта есептейді Синхрондау примитивін үстемелеп орындауы мүмкін ПАРАЛЕЛЛЬДІ ЕСЕПТЕУДІ ҰЙЫМДАСТЫРУ. 1 ЛЕКЦИЯ 14
Коммуникация шекараларда қажетті 10. 02. 2018 ПАРАЛЕЛЛЬДІ ЕСЕПТЕУДІ ҰЙЫМДАСТЫРУ. 1 ЛЕКЦИЯ 15
Негізгі бағдарламалау модельдері Open. MP Ø Ортақ жадылы дерективалар Ø Жұмыс декомпозициясын анықтау Ø Деректер декопозициясы жоқ Синхронизация айқындалмаған (қолданушы өзі анықтайды) MPI (Мәліметтерді алмасу интерфейсі) ØҚолданушы жұмысты және деректерді қалай үлестіретінін өзі анықтайды ØҚолданушы қалай және қашан коммуникация жасалатынын анықтайды ØОл үшін MPI коммуникация кітапхана функцияларын шақырады 10. 02. 2018 ПАРАЛЕЛЛЬДІ ЕСЕПТЕУДІ ҰЙЫМДАСТЫРУ. 1 ЛЕКЦИЯ 16
MPI парадигмасы • MPI-дағы әр процессор бір суп-бағдарламаны орындайды Ø Қарапайым тізбекті тілмен жазылған, м. С немесе Fortran Ø Әр процессорда бірдей (SPMD) • Жұмыс және деректердің үлестірілуі myrank-тың мәніне байланысты Ø Кітапханадағы арнайы функция қайтарады • Коммуникация арнайы send және receive функциялары арқылы жүзеге асады. 10. 02. 2018 ПАРАЛЕЛЛЬДІ ЕСЕПТЕУДІ ҰЙЫМДАСТЫРУ. 1 ЛЕКЦИЯ 17
Қосымша көмекші торлар Қолданушы анықтаған коммуникациялар 10. 02. 2018 ПАРАЛЕЛЛЬДІ ЕСЕПТЕУДІ ҰЙЫМДАСТЫРУ. 1 ЛЕКЦИЯ 18
Мәліметтердің жүріп өтуі – MPI, 3 10. 02. 2018 ПАРАЛЕЛЛЬДІ ЕСЕПТЕУДІ ҰЙЫМДАСТЫРУ. 1 ЛЕКЦИЯ 19
Қорытынды – MPI, IV MPI (Мәліметтердің жүріп өту интерфейсі) • Мәліметтер жүріп өту стандартталған үлестірілген жадылы параллелизм • Процесстерге негізделген • Қолданушы жұмыстың және деректің үлестірілуін және коммуникацияны өзі көрсету керек. • Каммуникация аяқтаған кездегі синхронизация анықталмаған • Домен декомпозициялау пайдаланылады • Стандартталуы • 10. 02. 2018 ПАРАЛЕЛЛЬДІ ЕСЕПТЕУДІ ҰЙЫМДАСТЫРУ. 1 ЛЕКЦИЯ 20
лек 1.pptx