- •Isbn 978-601-217-247-8
- •Есептеу машиналары
- •§1.1.1 Параллель виртуалды машиналар
- •1 Сурет. Vm/sp, vм/ха, vn/еsа машиналары
- •2 Сурет. Виртуалды машина жүйесі
- •3 Сурет. VMware терезесі
- •4 Сурет. Бір компьютерде бірнеше операциялық жүйе
- •5 Сурет. Вм консолынің мысалы
- •6 Сурет. Виртуалды машиналар жүйесінің архитектурасы
- •§1.1.2 Виртуалды машиналардың түрлері
- •§1.1.3 Виртуаландыру - ақпараттық жүйелерді реттеудің басты жолы
- •§1.2.1 Компьютердің аппараттық құрылымын жетілдіру
- •7 Сурет. Бір операцияны бес тактіде орындайтын тізбекті құрылғының
- •8 Сурет. Бір операцияны әрбірі бес тактіде орындайтын екі бірдей тізбекті
- •10 Сурет. Конвейерлік құрылғы өнімділігінің кіріс деректер
- •11 Сурет. Illiac IV матрицалық жүйесінің жобасы
- •§1.2.2 Компьютерді басқарудың интеллектуалдығын жоғарылату
- •12 Сурет. Ортақ жадылы параллель компьютерлер
- •13 Сурет. Таратылған жадылы параллель компьютерлер
- •14 Сурет. Ортақ шиналы мультипроцессорлық жүйе.
- •15 Сурет. Матрицалық коммутаторлардағы
- •16 Сурет. Омега - желі мультипроцессорлық жүйесі.
- •17 Сурет. Мультикомпьютерлерлік жүйелер байланыс топологияларымен: а – сызықша; б – дөңгелек; в – жұлдызша
- •18 Сурет. Процессорлардың байланыс топологияларының нұсқалары
- •19 Сурет. Сm* есептеу жүйесінің сызбасы
- •20 Сурет. Bbn Butterfly есептеу жүйесінің сызбасы
- •§1.2.3 Функционалды құрылғылар жүйесі
- •§1.3.1 Параллель компьютерлер және жүйелер классификациясы
- •21 Сурет. М. Флин классификациясының sisd және simd кластары
- •22 Сурет. М. Флин классификациясының misd және mimd кластары
- •23 Сурет. Mimd класына р. Хокнидың қосымша
- •§1.3.2 Векторлы-конвейерлік компьютелер
- •24 Сурет. Cray c90 компьютерінің жалпы сүлбесі
- •25 Сурет. Cray c90 компьютері жадысының бөлінуі
- •26 Сурет. Cray c90 компьютерінде векторлық операциялардың орындалуы
- •27 Сурет. Cray c90 компьютерінде векторлық операциялардың ілінісуі
- •§1.3.3 Ортақ жадылы параллель компьютерлер
- •28 Сурет. Hewlett Packard Superdome компьютері
- •29 Сурет. Hewlett Packard Superdome компьютерінің
- •§1.3.4 Таратылған жадылы есептеу жүйелері
- •30 Сурет. Cray t3e компьютерінің коммуникациялық торы
- •31 Сурет. Cray т3d/t3e компьютерлеріндегі барьерлі синхрондау
- •32 Сурет. Есептеу кластерінің жалпы схемасы
- •33 Сурет. Мвс-1000м суперкомпьютерінің құрылымы
- •34 Сурет. Коммуникациялық ортаның латенттілігі және өткізу қабілеті
- •§1.3.5 Метакомпьютинг
- •§2.1.1 Үлкен есептер және үлкен компьютерлер
- •35 Сурет. Сандық эксперименттің этаптары
- •§ 2.1.2 Алгоритм графы және параллель есептеулер
- •§ 2.1.3 Шексіз параллелділік концепциясы
- •§ 2.1.4 Ішкі параллельділік
- •37 Сурет. Матрицаларды көбейту графы
- •38 Сурет. Үшбұрышты жүйелерге арналған графтар
- •39 Сурет. Блокты-екідиагоналды жүйеге арналған Макрограф
- •40 Сурет. Блокты-екідиагоналды жүйеге арналған граф
- •41 Сурет. Жалпыланған пралллель форманың ярустары
- •42 Сурет. Графтағы микро және макропараллельділік
- •§2.2.1 Дәстүрлі тізбекті тілдерді пайдалану.
- •§2.2.2 OpenMp бағдарламалау технологиясы
- •44 Сурет. ОреnМр: бағдарламаның орындалу процесі
- •§2.2.3 Хабарлама жіберу негізіндегі бағдарламалау жүйелері. Mpi бағдарламалау жүйесі
- •Int mpi_Comm_rank(mpi_Comm comm, int *rank)
- •Int mpi_Send(void *buf, int count, mpi_Datatype datatype, int dest, int msgtag, mpi_Comm comm)
- •Integer count, datatype, dest, msgtag, comm, request, ierr
- •Int mpi_Isend(void *buf, int count, mpi_Datatype datatype, int dest, int msgtag, mpi_Comm comm, mpi_Request *request)
- •Int mpi_Irecv(void *buf, int count, mpi_Datatype datatype, int source, int msgtag, mpi_Comm comm, mpi_Request *request)
- •Integer count, datatype, source, msgtag, comm, request, ierr
- •Int main(argc,argv)
- •Int argc;
- •Include 'mpif.H’
- •Integer ierr, rank, size, prev, next, reqs(4), buf(2)
- •Integer stats(mpi_status_size, 4)
- •Int mpi_Waitany( int count, mpi_Request *requests, int *index, mpi_Status *status)
- •Integer count, requests(*), index, status(mpi_status_size), ierr
- •Int mpi_Waitsome( int incount, mpi_Request *requests, int *outcount, int *indexes, mpi_Status *statuses)
- •Integer incount, requests(*), outcount, indexes(*), ierr,
- •Int mpi_Test(mpi_Request *request, int *flag, mpi_Status *status)
- •Integer request, ierr, status(mpi_status_size)
- •Int mpi_Testall( int count, mpi_Request *requests, int *flag, mpi_Status *statuses)
- •Integer count, requests(*), statuses(mpi_status_size,*), ierr
- •Int mpi_Testany(int count, mpi_Request *requests, int *index, int *flag, mpi_Status *status)
- •Integer count, requests(*), index, status(mpi_status_size), ierr
- •Int mpi_Testsome( int incount, mpi_Request *requests, int *outcount, int *indexes, mpi_Status *statuses)
- •Integer incount, requests(*), outcount, indexes(*), ierr,
- •Int mpi_Iprobe( int source, int msgtag, mpi_Comm comm, int *flag, mpi_Status *status)
- •Include 'mpif.H’
- •Integer ierr, rank, size, n, nl, I, j
- •Integer irr, status(mpi_status_size), req(maxproc*2)
- •If(ir .Ne. Rank)
- •Int mpi_Send_init( void *buf, int count, mpi_Datatype datatype, int dest, int msgtag, mpi_Comm comm, mpi_Request *request)
- •Integer count, datatype, dest, msgtag, comm, request, ierr
- •Int mpi_Recv_init( void *buf, int count, mpi_Datatype datatype, int source, int msgtag, mpi_Comm comm, mpi_Request *request)
- •Integer count, datatype, source, msgtag, comm, request, ierr
- •Integer сомм, ierr
- •Include 'mpif.H’
- •Integer ibuf(maxproc)
- •Integer req(2*maxproc), statuses(mpi_status_size, maxproc)
- •Integer count, datatype, root, comm, ierr
- •Integer scount, stype, rcount, rtype, root, comm, ierr
- •Integer scount, stype, rcounts(*), displs(*), rtype, root, comm, ierr
- •Integer scount, stype, rcount, rtype, root, comm, ierr
- •Int mpi_Bcast(void *buf, int count, mpi_Datatype datatype, int source, mpi_Comm comm)
- •Int mpi_Gather( void *sbuf, int scount, mpi_Datatype stype, void *rbuf, int rcount, mpi_Datatype rtype, int dest, mpi_Comm comm)
- •Int mpi_Scatter(void *sbuf, int scount, mpi_Datatype stype, void *rbuf, int rcount, mpi_Datatype rtype, int source, mpi_Comm comm)
- •Int main(argc,argv)
- •Int argc;
- •Int numtasks, rank, sendcount, recvcount, source;
- •Int mpi_Barrier (mpi_Comm comm)
- •§ 2.2.4 Бағдарламалаудың басқа тілдері және жүйелері.
- •Параллель есептеуде қолданылатын қысқаша қазақша-орысша терминологиялық сөздік
- •Параллель есептеуде қолданылатын қысқаша орысша-қазақша терминологиялық сөздік
- •Және орта айнымалылары
- •Mpi функциялары
Және орта айнымалылары
Директивалар |
Функциялар |
atomic |
omp_destroy_lock |
barrier |
omp_destroy_nest_lock |
critical |
omp_get_active_level |
do |
omp_get_ancestor_thread_num |
end critical |
omp_get_dynamic |
end do |
omp_get_level |
end master |
omp_get_max_active_levels |
end parallel |
omp_get_ max_threads |
end sections |
omp_get_nested |
end single |
omp_get_num_procs |
flush |
omp_get_num_threads |
for |
omp_get_schedule |
master |
omp_get_team_size |
ordered |
omp_get_thread_limit |
parallel |
omp_get_thread_num |
section |
omp_get_wtick |
sections |
omp_get_wtime |
single |
omp_in_parallel |
task |
omp_init_lock |
taskwait |
omp_init_nest_lock |
threadprivate |
omp_set_dynamic |
|
omp_set_lock |
Орта айнымалылары |
omp_set_max_active_levels default |
OMP_DYNAMIC |
omp_set_nest_lock |
OMP_MAX_ACTIVE_LEVELS |
omp_set_nested |
OMP_NESTED |
omp_set_num_threads |
OMP_NUM_THREADS |
omp_set_schedule |
OMP_SCHEDULE |
omp_test_lock |
OMP_STACKSIZE |
omp_test_nest_lock |
OMP_THREAD_LIMIT |
omp_unset_lock |
OMP_WAIT_POLICY |
omp_unset_nest_lock |
Опциялар |
|
untied |
private |
collapse |
schedule |
copyin |
shared |
сopyprivate |
if |
firstprivate |
nowait |
lastprivate |
num_threads |
reduction |
ordered |
Қосымша 2.
Mpi функциялары
MPI_ADDRESS |
MPI_GET_PROCESSOR_NAME |
MPI_RECV |
MPI_ALLGATHER |
MPI_GRAPH_CREATE |
MPI_RECV_INIT |
MPI_ALLGATHERV |
MPI_GRAPH_GET |
MPI_REDUCE |
MPI_ALLREDUCE |
MPI_GRAPH_NEIGHBORS |
MPI_REDUCE_SCATTER |
MPI_ALLTOALL |
MPI_GRAPH_NEIGHBORS_COUNT |
MPI_REQUEST_FREE |
MPI_ALLTOALLV |
MPI_GRAPHDIMS_GET |
MPI_RSEND |
MPI_BARRIER |
MPI_GROUP_COMPARE |
MPI_RSEND_INIT |
MPI_BCAST |
MPI_GROUP_DIFFERENCE |
MPI_SCAN |
MPI_BSEND |
MPI_GROUP_EXCL |
MPI_SCATTER |
MPI_BSEND_INIT |
MPI_GROUP_FREE |
MPI_SCATTERV |
MPI_BUFFER_ATTACH |
MPI_GROUP_INCL |
MPI_SEND |
MPI_BUFFER_DETACH |
MPI_GROUP_INTERSECTION |
MPI_SEND_INIT |
MPI_CART_COORDS |
MPI_GROUP_RANK |
MPI_SENDRECV |
MPI_CART_CREATE |
MPI_GROUP_SIZE |
MPI_SENDRECV_REPLACE |
MPI_CART_GET |
MPI_GROUP_TRANSLATE_RANKS |
MPI_SSEND |
MPI_CART_RANK |
MPI_GROUP_UNION |
MPI_SSEND_INIT |
MPI_CART_SHIFT |
MPI_IBSEND |
MPI_START |
MPI_CART_SUB |
MPI_INIT |
MPI_STARTALL |
MPI_CARTDIM_GET |
MPI_INITIALIZED |
MPI_TEST |
MPI_COMM_CREATE |
MPI_IPROBE |
MPI_TESTALL |
MPI_COMM_DUP |
MPI_IRECV |
MPI_TESTANY |
MPI_COMM_FREE |
MPI_IRSEND |
MPI_TESTSOME |
MPI_COMM_GROUP |
MPI_ISEND |
MPI_TOPO_TEST |
MPI_COMM_RANK |
MPI_ISSEND |
MPI_TYPE_COMMIT |
MPI_COMM_SIZE |
MPI_OP_CREATE |
MPI_TYPE_CONTIGUOUS |
MPI_COMM_SPLIT |
MPI_OP_FREE |
MPI_TYPE_EXTENT |
MPI_DIMS_CREATE |
MPI_PACK |
MPI_TYPE_FREE |
MPI_FINALIZE |
MPI_PACK_SIZE |
MPI_TYPE_HINDEXED |
MPI_GATHER |
MPI_PROBE |
MPI_TYPE_HVECTOR |
MPI_GATHERV |
MPI_GET_COUNT |
|
Әдебиеттер
Андрианов А. Н., Бугеря А. Б., Ефимкин К. Н., Задыхайло И. Б. Норма. Описание языка. Рабочий стандарт/ Препринт ИПМ им. М.В.Келдыша РАН - 1995. - № 120. – 50 с.
Антонов А. С, Параллельное программирование с использованием технологии MPI. Учебное пособие. – М.: Изд-во МГУ, 2004. – 71 с.
Антонов А. С, Параллельное программирование с использованием технологии OpenMP. Учебное пособие. – М.: Изд-во МГУ, 2009. – 77 с
Акжалова А. Ж. Учебное пособие: Параллельные вычисления. Алматы: Изд. ТОО, «Print S», 2004. - 114 с.
Арапов Д. М., Калинов А. Я., Ластовецкий А. Л., Ледовских И. Н., По-сыпкин Н. А. Язык и система программирования для высокопроизводительных параллельных вычислений на неоднородных сетях // Программирование. - 2000. - № 4. - С. 55-80.
Бебб Р., Мак-Гроу Дж., Акселрод Т. и др. Учебное пособие: Программирование на параллельных вычислительных системах: Пер. с англ. под ред. Р. Бебба II. – М.:Мир, 1991.-309 с.
Богачев К. Ю. Учебное пособие: Основы параллельного программирования. - М: БИНОМ. Лаборатория знаний, 2003.- 256 с.
Воеводин В. В. Математические основы параллельных вычислений. - М.: МГУ, 1991. - 345 с.
Воеводин В. В. Учебное пособие: Математические модели и методы в параллельных процессах. - М.: Наука, 1986.- 346 с.
В. Воеводин, Вл. В. Воеводин. Параллельные вычисления – СПб.: БХВ-Петербург, 2002. - 608 с.
Воеводин Вл. В., Жуматий С. А. Вычислительное дело и кластерные системы // МГУ. - 2007. – 150 с..
Гергель В. П., Стронгин Р. Г. Учебное пособие: Основы параллельных вычислений для многопроцессорных вычислительных систем. - Н. Новгород, ННГУ, 2001.-236 с.
Герберт Шилдт, Джеймс Холмс. Учебное пособие: Искусство программирования на Java // The Art of Java. — М.: Диалектика , 2005. – 301 с.
Головкин Б. А. Учебное пособие: Вычислительные системы с большим числом процессоров. - М.: Радио и связь, 1995.-315 с.
Головкин Б. А. Параллельные вычислительные системы. - М.: Наука, 1980. - 520 с.
Горелик А. М., Задыхайло И. Б. Учебное пособие: Расширение Фортрана для ногопроцессорных систем с распределенной памятью. Препринт ИПМ им.М.В.Келдыша РАН, 1992.-403 с.
Гультяев А. К., Виртуальные машины: несколько компьютеров в одном. – СПб: Питер. 2006 – 224 с.
Гэри М., Джонсон Д. Вычислительные машины и труднорешаемые задачи. - М.: Мир. 1982. - 416 с.
Дымников В. П. Современные проблемы моделирования отклика климатической системы на малые внешние воздействия // Труды межд. теор. конф. "Проблемы гидрометеорологии и окружающей среды на пороге XXI века". - М.: Гидрометеоиздат, 2000. - с. 14-34.
Забродин А. В., Луцкий А. Е., Марбашев К. X., Чернов Л. Г. Численное исследование обтекания летательных аппаратов и их элементов в реальных полетных режимах // Общероссийский науч.-техн. журнал "Полет". - 2001. - № 7. - С. 21-29.
Задыхайло И. Б. Организация циклического процесса счета по параметрической записи специального вида // ЖВМ и МФ. – 1963. – Т.3. №2. – с.337-357.
Кнут Д. Учебное пособие: Искусство программирования для ЭВМ. Т. 3. Сортировка и поиск. - М.: Мир, 1981.-265 с.
Кормен Т., Лейзерсон Ч., Ривест Р. Учебное пособие: Алгоритмы: построение и анализ. - М.: МЦНТО, 1999.-325 с.
Корнеев В. В.. Учебное пособие: Параллельные вычислительные системы. - М.: Нолидж, 1999.-358 с.
Корнеев В. В. Учебное пособие: Параллельное программирование в MPI. Москва-Ижевск: Институт компьютерных исследований, 2003.- 299 б.
Корнеев В. В., Киселев А. В. Учебное пособие: Современные микропроцессоры. - М.: Нолидж, 1998.-312 с.
Кофлер М. Весь Линукс. Установка, конфигурирование, использование. – М.: Бином-Пресс, 2006. – 880 с.
Лацис А., Как построить и использовать суперкомпьютер. – М.:Бестселлер, 2003. – 240 с.
Немнюгин С., Стесик О. Учебное пособие: Параллельное программирование для многопроцессорных вычислительных систем. - СПб.: БХВ-Петербург, 2002. -452 с.
Степанов А. Н., Архитектура вычислительных систем и компьютерных сетей. – Питер, 2007. – 496 с.
Сырков Б. Ю., Матвеев С. В. Учебное пособие: Программное обеспечение мультитранспьютерных систем. - М.: Диалог-МИФИ, 1992.-335 с.
Трахтенгерц Э. А. Учебное пособие: Введение в теорию анализа и распараллеливания программ ЭВМ в процессе трансляции. – М.: Наука, 1981. -244 с.
Фаддеева В. Н., Фаддеев Д. К. Параллельные вычисления в линейной алгебре // Кибернетика. – 1977. -№6. с.28-40; 1982.-№3.-с.18-31,44.
Хоар Ч. Учебное пособие: Взаимодействующие последовательные процессы. Пер. с англ. - М.: Мир, 1989. -264 с.
Abramov S. М., Adamowitch А. 1., Nesterov 1. A., Pimenov S. P., Shevchuck Yu. V. Autotransformation of evaluation network as a basis for automatic dynamic parallelizing // NATUG'1993 Spring Meeting "Transputer: Research and Application", May 10—11, 1993.
Bailey D. H. Twelve ways to fool the masses when giving performance results on parallel computers / RNR Technical Report RNR-91-20, NASA Ames Research Center, Moffett Field CA 94035, June 11, 1991.
Baur W., Strassen V. The complexity of partial derivatives // Theor. Comput. Sci., - 1983. - 22. - P. 317-330.
Berry М. et al. The Perfect Club Benchmarks: effective performance evaluation of supercomputers // Int. J. of Supercomputer Applications. — 1989. - 3(3) - P. 5-40.
Cybenko G., Kipp L., Pointer L., Kuck D. Supercomputer performance evaluation and the Perfect Benchmarks / Tech. Rep. 965, CSRD, Univ. of Illinois, 1990.
Lewis T. G. Foundation of parallel programming: machine-independent approach. IEEE Computer Society Press, 1994. — 282 p.
Қазақша-орысша, орысша-қазақша терминологиялық сөздік. Информатика және есептеуіш техника. Республикалық мемлекеттік «Рауан» баспасы, Алматы 1999.
Параллельді есептеулер бойынша ақпаратты-аналитикалық материалдар (http://www.parallel.ru)
Ақпараттық технологиялар сервері - http://www.citforum.ru
Информационные материалы Центра компьютерного моделирования Нижегородского университета (http://www.software.unn.ac.ru/ccam)
Информационные материалы рабочей группы IEEE по кластерным вычислениям (http://www.ieeetfcc.org)
