Přeskočit na hlavní obsah
Přeskočit hlavičku
Ukončeno v akademickém roce 2020/2021

Paralelní a distribuované systémy

Typ studia bakalářské
Jazyk výuky angličtina
Kód 460-2028/02
Zkratka PDS
Název předmětu česky Paralelní a distribuované systémy
Název předmětu anglicky Parallel and Distributed Systems
Kreditů 6
Garantující katedra Katedra informatiky
Garant předmětu prof. Ing. Pavel Krömer, Ph.D.

Osnova předmětu

Přednášky:

Úvod do paralelních systémů. Model předávání zpráv. Komunikace dvoustranná a skupinová. Message Passing Interface (MPI) - příklad systému předávání zpráv.

Metodika návrhu paralelních algoritmů. Dekompozice (doménová, funkční), komunikační analýza, aglomerace, mapování na procesory. Techniky vyvažování zátěže. Analýza a hodnocení paralelních algoritmů. Amdahlův zákon.

Technická klasifikace paralelních (distribuovaných) systémů. Flynnova taxonomie. Architektury s distribuovanou a sdílenou pamětí. Propojovací subsystémy paralelních počítačů.

Specifika programování pro architektury se sdílenou pamětí. Vlákna. OpenMP. Další modely paralelního zpracování.

Distribuovaný systém, rozdíly paralelních a distribuovaných systémů. Vybrané pojmy a algoritmy distribuovaných systémů.

Vzdálené volání procedur. Principy, specifika a sémantiky vzdálených volání. Standard Remote Procedure Call (RPC/XDR).

Distribuované objektové systémy. Object request broker. Stub, skeleton, servant, objektový adaptér. Přenositelnost implementací. Jazyky pro popis rozhraní, jazyková mapování. Předávání hodnotou a odkazem, marshalling. Architektury CORBA a RMI.

Pokročilé rysy distribuovaných objektových systémů. Dynamická aktivace objektů (POA, RMI aktivátory). Dynamická volání (CORBA DII) a interface repository. Dynamic Skeleton Interface. Asynchronní volání. Jmenné služby: CORBA Naming Service a RMI Registry. CORBA Services.

Architektura Enterprise JavaBeans. Aplikační server, kontejner a jeho úloha, EJB komponenty. Vývojové role. Typy a životní cyklus a persistence komponent. Deployment descriptor.

Provoz distribuovaných systémů v intranetech a v Internetu. Bezpečnost distribuovaných systémů.


Projekty:

Studenti budou programovat paralelní, resp. distribuovanou aplikaci založenou na jedné z diskutovaných technologií podle vlastního výběru.


Počítačové laboratoře:

L 1-2-3: Message Passing Interface (MPI)
L 4-5: Knihovny OpenMP
L 6 Remote Procedure Call (RPC)
L 7 Common Object Request Architecture (CORBA)
L 8 Pokročilá CORBA
L 9 Remote Method Invocation (RMI)
L 10: Enterprise JavaBeans(EJB)
L 11: Prezentace projektů
Průběžné konzultace semestrálních projektů.

Povinná literatura

Foster, I.: Designing and Building Parallel Programs. Addisson-Wesley, 1995
Zelený, J., Nožička, J.: COM+, CORBA, EJB. BEN - technická literatura, Praha 2002. ISBN 80-7300-057-1

Doporučená literatura

Foster, I.: Designing and Building Parallel Programs. Addisson-Wesley, 1995
Grygárek, P.: Sylaby předmětu Distribuované objektové systémy
Object Management Group: The Common Object Request Broker: Architecture and Specification. Object Management Group (http://www.omg.org)
Sun Microsystems: Remote Method Invocation. http://www.javasoft.com
Sun Microsystems: Enterprise JavaBeans. http://www.javasoft.com
http://www.cs.vsb.cz/~gry72/dosy/dosys.html
Motyčková, L.: Distribuované systémy - výpočty v sítích. Science 1997.
Janeček, J.: Distribuované systémy. Skriptum ČVUT, Praha 2001