NETB241 Паралелно програмиране

Анотация:

За програмното решаване на някои сложни задачи, като например тези от областта на математическата физика, комбинаториката или дискретната оптимизация, е необходим огромен изчислителен ресурс. За целта се създават свръх-производителни компютърни системи включващи хиляди, и дори десетки хиляди процесори, способни да работят паралелно и в синхрон. Вече са в редовна употреба евтини компютри с 2, 4, 8 и повече процесорни ядра. Скоро, обичайните програмистки парадигми ще бъдат тези за паралелно програмиране. Целта на курса е да запознае студентите с една от тези парадигми – паралелното програмиране с предаване на съобщения (MPI).

прочети още
Мрежови технологии (на английски език)

Преподавател(и):

проф. Красимир Манев  д-р

Описание на курса:

Компетенции:

Успешно завършилите курса студенти:

1) знаят:

• Същността на парадигмата за паралелно програмиране с предаване на съобщения – Message Passing Interface (MPI);

• Основните понятия и програмистки концепции на MPI;

• Начина на работа с една конкретна среда за MPI (MPICH2) и основните функции от библиотеката на средата;

2) могат:

• Да напишат паралелна програма в изучаваната среда по зададен паралелен алгоритъм;

• Да разработят свой паралелен алгоритъм за решаване на не сложна алгоритмична задача и да го имплементират в MPI среда.
Предварителни изисквания:
Студентите да имат знания и/или умения:

• Много добро познаване на език и съответна среда за програмиране (желателно е езикът да е C/C++).

• Добро владеене на обичайните серийни алгоритми.

Форми на провеждане:
Редовен

Учебни форми:
Лекция

Език, на който се води курса:
Английски

Теми, които се разглеждат в курса:

Литература по темите:

1. __, MPI: A Message-Passing Interface Standard. Version 2.2. Message Passing Interface Forum, September 4, 2009. http://www.mpi-forum.org/docs/mpi-2.2/mpi22-report.pdf

2. __, MPI: A Message-Passing Interface Standard. Version 3.0. Message Passing Interface Forum, September 21, 2012. http://www.mpi-forum.org/docs/mpi-2.2/mpi22-report.pdf

3. __, MPI Documentations, http://www.mpi-forum.org/docs/

4. W. Gropp, E.L. Lusk, A. Skjellum. Using MPI: Portable Parallel Programming with the Message Passing Interface, 2nd ed., The MIT Press, 1999. ISBN-13: 978-0262571326

5. B. Parhami. Introduction to Parallel Processing. Algorithms and Architectures. Kluwer Academic Publishers,2002. ISBN-13: 978-0306459702