- •«Параллель есептеулер» пәні бойынша 050602-Информатика мамандығының студенттері үшін лекциялар жинағы
- •Шымкент- 2009
- •1. Паралель программалау дамуының хронологиясы
- •Параллелизм. Программалау модельдері: параллель және тізбекті. Деректер параллелизмі мен есептер параллелизмі. Программалаудың негізгі параллель модельдері.
- •2 Параллелизм
- •2.1. Деректер параллелизмі мен есептер параллелизмі
- •Программалау модельдері: параллель және тізбекті
- •Программалаудың негізгі параллель модельдері
- •Параллель компьютерлер. Жылдам әрекеттесуші аппараттық жасау.
- •3.1. Параллель компьютерлердің типтері
- •3.1.1. Жалпы қатынау жадылы көппроцессорлы жүйелерге (бөлінетін жадылы)
- •3.1.2. Хабар беру мультикомпьтері және үлестірілген жадылы мультикомпьютерлер
- •Параллель компьютерлер типтері. Флинн таксономиясы. Жаңа таксономия құру спецификациясы.
- •4.1. Флинн таксономиясы
- •6.Процесстер және синхрондау
- •7.1 “Өндіруші –пайдаланушы” типті синхрондау
- •Параллель алгоритмдер. Параллель алгоритмдерді өңдеу: декомпозиция (сегменттеу), коммуникацияларды жобалау, үлкейту. Есептеулерді жобалау. Параллель сұрыптау алгоритмдері.
- •8.1. Ранг әдісімен сұрыптау
- •8.2. Салыстыру-және-ауыстыру
- •8.2.1 Деректерді бөлу
- •Сандық өрістерді параллельдеу: тік және итерациялық сызықтық теңдеулер жүйесінің шешу әдістері.
- •9.1 Сандық әдістерді параллельдеу
- •9,1.1. Матрицаларды көбейту
- •9.1.2. Сызықтық алгебралық теңдеулер жүйесін шешу
- •Параллель программалау. Ағындар мен деректерді өңдеу.
- •10. Параллель программалау
- •10.4.Occam- параллель программалау тілі
- •Жылдам әрекеттесуші фортран(hpf)
- •Pvm, mpi, OpenMp көмегімен таратылған деректерге құру және кіріс.
- •13. Қолданбалы есептерді шешуде параллель алгоритмдерді қолдану
- •Кескіндерді өңдеу типтері: кескінді өңдеудің төменгі, орташа және жоғарғы деңгейі.
- •15 Лекция. Фурье түрлендіруі және Фурье алгоритмдері
- •3. Фурье қатары
ҚАЗАҚСТАН РЕСПУБЛИКАСЫ БІЛІМ ЖӘНЕ ҒЫЛЫМ МИНИСТРЛІГІ
М.ӘУЕЗОВ атындағы ОҢТҮСТІК ҚАЗАҚСТАН МЕМЛЕКЕТТІК УНИВЕРСИТЕТІ
«Информатиканы оқытудың теориясы мен әдістемесі» кафедрасы
Жумашова Т.У.
Параллель есептеулер
«Параллель есептеулер» пәні бойынша 050602-Информатика мамандығының студенттері үшін лекциялар жинағы
Оқу түрі: күндізгі
Шымкент- 2009
1-лекция
Кіріспе. Параллель есептеулер дамуының хронологиясы. Параллель компьютерлерге сұраныс және параллель программалау бағыттарының дамуы.
1. Паралель программалау дамуының хронологиясы
Негізгі анықтамалар
Параллель компьютер дегеніміз – есепті сандық шешу үшін бірігіп жұмыс істеуге қабілетті процессорлар жинағы.
Параллель бағдарлама дегеніміз - әрбір процесс оның өз процессорында орындалатын және сонымен бірге процесс параллель түрде орындалатын бағдарлама.
Параллель бағдарламалау дамуына және параллель компьютерлерге сұраныс
Компьютерлік техологиялардың дамуы, соның ішінде параллель компьютерлер 50-жылдардан бастап пайда болды.
1-сурет. Өте жылдам клмпьютерлердің 1945 жылдан бастап осы уақытқа дейінгі жұмысы.
Есептеу уақытын, сонымен бірге, деректердің үлкен массивін өңдеу уақытын үнемдеу және есептеу жылдамдығына деген сұраныс барлық уақытта бар болатын, бірақ ол экономика және техникадағы жаңа ақпараттық технологиялар, ғылыми көлемді облыстардың дамуымен бірмезгілде өсіп келеді.
Күнделікті тұрмыстағы қарапайым мысалдарды қарастырайық. Мысалы, көктемнің келуімен гүлдер ағаштарда да гүдейді, машиналардың өз жолы болады,бірақ олар жол үстінде бірге қозғалады. Майкл Куинн (Quinn, 1994) мысал ретінде оркестрді ұсынды: оркестрде бірнеше инструменттер барлығы бірге әдемі бір мелодияны ойнайды. Осыған ұқсас параллель процесті басқа да облыстардан көруге болады. Параллель коспьютерлер мен параллель есептеулерді қолданатын облыстарға шолу жасайық.
Күрделі жүйелерді сандық модельдеу: ауа-райын болжау, жаңалықтар, ағымдық космостық (полет) ұшу туралы жедел ақпарат. Ертеңгі ауа-райын болжайтын ауа-райы типті модельді есептеу уақыты 5 сағатта дайын болуы тиіс.
Бизнестегі коммерциялық қосымшалар: құрамына бейнеконференциялар, бірлескен жұмыс орталары, параллель деректер қоры, банк транзакциялары кіретін қосымшалар.
Техникадағы қосымшалар: медицинадағы автоматтандырылған диагноз, жер сілкінісін болжау және т.б.
Білім саласындағы коммерциялық қосымшалар: кеңейтілген графика және виртуальді әлем, әсірсе, ойын-сауық облысында, компьютерлік ойындар.
Жобалаушылар параллелизмді төмендегілерді қолданып пайдалана бастады: функционалдық модульдер жиыны, енгізу-шығару операциясын және орталық процессорды үйлестіру (перекрывание), конвейерлік өңдеу (ішкі параллелизм), командалар ағыны және деректер ағыны.
Осының негізінде келесі мәселелер пайда болды:
Компьютер жұмысы негізгі операция және бірмезгілде орындалуы мүмкін кейбір негізгі операциялар санын орындауға қажет уақытқа тікелей тәуелді. Негізгі операцияларды орындауға кететін уақыт процессордың «тактілік циклымен» шектеледі, яғни бұл көптеген примитивті операциялардың орындалуына кететін уақыт. Мұнымен қатар тактілік цикл уақыты баяу түрде азаяды және жарық жылдамдығы типті физикалық шекке жуықтайды. Біз жылдамдатылған есептеу жұмысын қамтамасыз ету үшін бұдан жылдам процессорларға тәуелді бола алмаймыз.
Олар е қалай шешілді? Компьютерлік жобалаушылар бір компьютрді түрлендіру үщін осы шектеулерді жоюға әртүрлі әдістерді пайдалана бастады:
конвейерлі өңдеу (бірнеше командалардың әртүрлі стадиялары бірмезгілде орындалады);
функционалдық модульдер жиыны (бірнеше көбейткіштер сумматорлар және т.б. жеке командалар ағынымен басқарылады);
әрқайсысының өзара байланысының (желінің) байланысқан логикасы, өз процессоры, жады бар бірнеше «компьютрлердің» бірігуі.
Осылайша, параллелизм супер-ЭЕМ, жұмыс станциялары, дербес компьютерлер және желілерге ене бастады. Жаңа алгоритмдерге деген сұраныс пісіп жетілді, бағдарлама параллель бағдарламаға құрылымданды.
2-лекция
