Párhuzamos programozás

A tantárgy angol neve: Parallel Programming

Adatlap utolsó módosítása: 2006. július 1.

Tantárgy lejárati dátuma: 2015. január 31.

Budapesti Műszaki és Gazdaságtudományi Egyetem
Villamosmérnöki és Informatikai Kar

Villamosmérnöki Szak

Számítógéprendszerek szakirány

Tantárgykód Szemeszter Követelmények Kredit Tantárgyfélév
VIHI4070 8. 4/0/0/v 5 1/1
3. A tantárgyfelelős személy és tanszék Dr. Filp András,
4. A tantárgy előadója

Név:

Beosztás:

Tanszék, Int.:

Dr. Filp András

adjunktus

Hálózati Rendszerek és Szolgáltatások Tanszék

5. A tantárgy az alábbi témakörök ismeretére épít

Programozás, Digitális technika, Informatika, Párhuzamos archiktektúrák

6. Előtanulmányi rend
Ajánlott:

Programozás, Párhuzamos architektúrák

7. A tantárgy célkitűzése

A tantárgy célja az, hogy az egy- és többprocesszoros rendszerek párhuzamos programozása témakörben a hallgatók:

- ismereteket szerezzenek az elméleti alapokról, ilyen rendszerek leírási és elemzési módjairól,

- jártasságot szerezzenek a programtervezési és a gyakolati programkészítési módszerekben,

- ismereteket szerezzenek a megvalósítási módokról.

8. A tantárgy részletes tematikája

A párhuzamosság megvalósításának elvi alapjai. A párhuzamos műveletek leírási és elemzési módszerei.

Nyelvi lehetőségek az aszinkron és a szinkron párhuzamos programozáshoz. A kölcsönös kizárás leírási és megvalósítási módjai. Algoritmusok helyességének elemzése.

Párhuzamos folyamatok szinkronizálása: szemaforok, feltételes kritikus szakaszok, feltételváltozók, monitorok.

Üzenetátadási módszerek: ko-rutinok, kommunikáló párhuzamos folyamatok, elosztott folyamatok. Inter-process kommunikáció, távoli eljáráshívás.

Megvalósítási módok, pl. Modula-2, Pascal Plus, Párhuzamos C, Ada, Occam. Szinkron párhuzamos architektúrák és nyelvi eszközök: HP FORTRAN, MPC.

Tipikus algoritmusok párhuzamos rendszereken: rendezés, keresés, vektorműveletek, buffer-használat.

Erőforrások párhuzamos kezelése. Holtpont-kezelés.

Tranzakcókezelés és adatállományok párhuzamos elérése.

9. A tantárgy oktatásának módja (előadás, gyakorlat, laboratórium)

Előadás

10. Követelmények

a. A szorgalmi időszakban:

1 nagyzárthelyi, (a 8.-10. héten) melyet elégtelen eredmény vagy hiányzás esetén egy alkalommal lehet pótolni. 1 db programtervezési feladat 4.-12. hét.

Vizsgára bocsátáshoz a NZH v. PZH elégséges megírása és a programtervezési feladat elfogadható szintű megoldása kell.

b. A vizsgaidőszakban: A félév lezárásának módja: vizsga.

Legkorábban 2 évvel előbb szerzett aláírást ill. vizsgát ismerünk el.A félév végi osztályzat megállapítása: 25% NZH, 25% programtervezési feladat, 50% vizsgadolgozat, de mindegyik legalább elégséges kell, hogy legyen. Kreditpontot az kap, aki a vizsgát legalább elégséges szinten teljesítette. A NZH a vizsgaidőszak első két hetében pótolható.

c. Elővizsga: -

13. Jegyzet, tankönyv, felhasználható irodalom

Dr. Pongor György: Párhuzamos programozás kézirat, http://www.hit.bme.hu/anonftp/pongor/pp/pp-jegyz.doc

M. Ben-Ari: Principles of Concurrent Programming. Prentice-Hall, 1982.

R.H. Perrott: Parallel Programming. Addison-Wesley, 1987

Jean Bacon: Concurrent Systems. Addison-Wesley, 1993.

dr. Kacsuk Péter, Ferenczi Szabolcs: Párhuzamos és konkurrens programozás soktranszputeres rendszereken. BME Mérnöktovábbképző Intézet, 1993.

15. A tantárgy tematikáját kidolgozta

Név:

Beosztás:

Tanszék, Int.:

Dr. Pongor György

adjunktus

Hálózati Rendszerek és Szolgáltatások Tanszék