PV192 Paralelní technické systémy

Fakulta informatiky
jaro 2015
Rozsah
2/0/2. 4 kr. (plus ukončení). Ukončení: zk.
Vyučující
doc. RNDr. Petr Holub, Ph.D. (přednášející)
RNDr. Lukáš Hejtmánek, Ph.D. (přednášející)
prof. Ing. Václav Přenosil, CSc. (náhr. zkoušející)
Garance
doc. RNDr. Aleš Horák, Ph.D.
Katedra strojového učení a zpracování dat – Fakulta informatiky
Dodavatelské pracoviště: Katedra strojového učení a zpracování dat – Fakulta informatiky
Rozvrh
Po 16. 2. 8:00–14:50 A219, Út 7. 4. 14:00–15:50 A319, Út 14. 4. 14:00–15:50 A319, Út 21. 4. 14:00–15:50 A319, Út 28. 4. 14:00–15:50 A319, Út 5. 5. 14:00–15:50 A319, Út 12. 5. 14:00–15:50 A319
Předpoklady
IB109 Návrh paralelních systémů
Předpokládá se znalost programování v C (na úrovni předmětu PB071) a Java (na úrovni předmětu PB162). Dále se předpokládá znalost operačního systému UNIX na uživatelské úrovni.
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Mateřské obory/plány
předmět má 29 mateřských oborů, zobrazit
Cíle předmětu
Na konci tohoto kurzu bude student schopen: rozumět principům vláknového programování včetně různých mechanismů synchronizace; vytvářet a ladit paralelní programy nad sdílenou pamětí; analyzovat paralelní algoritmy z pohledu efektivní implementace nad sdílenou pamětí.
Osnova
  • Vícevláknové prostředí, problematika sdílené paměti. Důvody paralelizace
  • Procesy a synchronizace, race conditions
  • Vlákna v jazyce C, jejich tvorba a ukončení
  • Vlákna v jazyce Java, jejich tvorba a ukončení
  • Ladění paralelních aplikací
  • Viditelnost a synchronizace operací. Signalizace mezi objekty
  • Mutexy, semafory, monitory. Pokročilé typy zámků, atomické typy a neblokující struktury
  • Zásobárny vláken a futures
  • Principy a použití OpenMP
  • Základní vzory vícevláknových aplikací. Datové struktury vhodné pro použití v paralelních algoritmech
  • Úvod do problematiky aplikací v reálném čase
  • Podpora paralelního programování v jiných programovacích jazycích.
Literatura
    doporučená literatura
  • GOETZ, Brian a Tim PEIERLS. Java concurrency in practice. Upper Saddle River, NJ: Addison-Wesley, 2006, xx, 403. ISBN 0321349601. info
  • BEN-ARI, Mordechai. Principles of concurrent and distributed programming. 2. ed. Harlow: Addison-Wesley, 2006, xv, 361. ISBN 032131283X. info
  • ANDREWS, Gregory R. Foundations of multithreaded, parallel, and distributed programming. Reading: Addison-Wesley, 2000, xx, 664 s. ISBN 0-201-35752-6. info
Výukové metody
Standardní výuka, čtení doporučené literatury, praktické řešení a programování zadaných úkolů.
Metody hodnocení
Bodované hodnocení řešení úkolů, 40% hodnocení. Ústní zkouška v průběhu zkouškového období, 60% hodnocení. Pro úspěšné absolvování nesmí být bodové hodnocení za řešení úkolů a ústní zkoušku 0.
Informace učitele
Předmět je zaměřen na teoretickou i praktickou část. Praktickou část budou studenti řešit na vlastních počítačích nebo v počítačových učebnách. Předpokládá se aktivní přístup při řešení zadaných úkolů.
Další komentáře
Studijní materiály
Předmět je vyučován jednou za dva roky.
Předmět je zařazen také v obdobích jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014.

PV192 Paralelní technické systémy

Fakulta informatiky
jaro 2014
Rozsah
2/0/2. 4 kr. (plus ukončení). Ukončení: zk.
Vyučující
doc. RNDr. Petr Holub, Ph.D. (přednášející)
RNDr. Lukáš Hejtmánek, Ph.D. (přednášející)
prof. Ing. Václav Přenosil, CSc. (náhr. zkoušející)
Garance
prof. Ing. Václav Přenosil, CSc.
Katedra strojového učení a zpracování dat – Fakulta informatiky
Dodavatelské pracoviště: Katedra strojového učení a zpracování dat – Fakulta informatiky
Rozvrh
Út 14:00–15:50 G123
Předpoklady
Předpokládá se znalost programování v C (na úrovni předmětu PB071) a Java (na úrovni předmětu PB162). Dále se předpokládá znalost operačního systému UNIX na uživatelské úrovni.
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Mateřské obory/plány
předmět má 29 mateřských oborů, zobrazit
Cíle předmětu
Na konci tohoto kurzu bude student schopen: rozumět principům vláknového programování včetně různých mechanismů synchronizace; vytvářet a ladit paralelní programy nad sdílenou pamětí; analyzovat paralelní algoritmy z pohledu efektivní implementace nad sdílenou pamětí.
Osnova
  • Vícevláknové prostředí, problematika sdílené paměti. Důvody paralelizace
  • Procesy a synchronizace, race conditions
  • Vlákna v jazyce C, jejich tvorba a ukončení
  • Vlákna v jazyce Java, jejich tvorba a ukončení
  • Ladění paralelních aplikací
  • Viditelnost a synchronizace operací. Signalizace mezi objekty
  • Mutexy, semafory, monitory. Pokročilé typy zámků, atomické typy a neblokující struktury
  • Zásobárny vláken a futures
  • Principy a použití OpenMP
  • Základní vzory vícevláknových aplikací. Datové struktury vhodné pro použití v paralelních algoritmech
  • Úvod do problematiky aplikací v reálném čase
  • Podpora paralelního programování v jiných programovacích jazycích.
Literatura
    doporučená literatura
  • GOETZ, Brian a Tim PEIERLS. Java concurrency in practice. Upper Saddle River, NJ: Addison-Wesley, 2006, xx, 403. ISBN 0321349601. info
  • BEN-ARI, Mordechai. Principles of concurrent and distributed programming. 2. ed. Harlow: Addison-Wesley, 2006, xv, 361. ISBN 032131283X. info
  • ANDREWS, Gregory R. Foundations of multithreaded, parallel, and distributed programming. Reading: Addison-Wesley, 2000, xx, 664 s. ISBN 0-201-35752-6. info
Výukové metody
Standardní výuka, čtení doporučené literatury, praktické řešení a programování zadaných úkolů.
Metody hodnocení
Bodované hodnocení řešení úkolů, 40% hodnocení. Ústní zkouška v průběhu zkouškového období, 60% hodnocení. Pro úspěšné absolvování nesmí být bodové hodnocení za řešení úkolů a ústní zkoušku 0.
Informace učitele
Předmět je zaměřen na teoretickou i praktickou část. Praktickou část budou studenti řešit na vlastních počítačích nebo v počítačových učebnách. Předpokládá se aktivní přístup při řešení zadaných úkolů.
Další komentáře
Studijní materiály
Předmět je vyučován každoročně.
Předmět je zařazen také v obdobích jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2015.

PV192 Paralelní technické systémy

Fakulta informatiky
jaro 2013
Rozsah
2/0/2. 4 kr. (plus ukončení). Ukončení: zk.
Vyučující
doc. RNDr. Petr Holub, Ph.D. (přednášející)
RNDr. Lukáš Hejtmánek, Ph.D. (přednášející)
prof. Ing. Václav Přenosil, CSc. (náhr. zkoušející)
Garance
prof. Ing. Václav Přenosil, CSc.
Katedra strojového učení a zpracování dat – Fakulta informatiky
Dodavatelské pracoviště: Katedra strojového učení a zpracování dat – Fakulta informatiky
Rozvrh
Pá 12:00–13:50 C511
Předpoklady
Předpokládá se znalost programování v C (na úrovni předmětu PB071) a Java (na úrovni předmětu PB162). Dále se předpokládá znalost operačního systému UNIX na uživatelské úrovni.
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Mateřské obory/plány
předmět má 29 mateřských oborů, zobrazit
Cíle předmětu
Na konci tohoto kurzu bude student schopen: rozumět principům vláknového programování včetně různých mechanismů synchronizace; vytvářet a ladit paralelní programy nad sdílenou pamětí; analyzovat paralelní algoritmy z pohledu efektivní implementace nad sdílenou pamětí.
Osnova
  • Vícevláknové prostředí, problematika sdílené paměti. Důvody paralelizace
  • Procesy a synchronizace, race conditions
  • Vlákna v jazyce C, jejich tvorba a ukončení
  • Vlákna v jazyce Java, jejich tvorba a ukončení
  • Ladění paralelních aplikací
  • Viditelnost a synchronizace operací. Signalizace mezi objekty
  • Mutexy, semafory, monitory. Pokročilé typy zámků, atomické typy a neblokující struktury
  • Zásobárny vláken a futures
  • Principy a použití OpenMP
  • Základní vzory vícevláknových aplikací. Datové struktury vhodné pro použití v paralelních algoritmech
  • Úvod do problematiky aplikací v reálném čase
  • Podpora paralelního programování v jiných programovacích jazycích.
Literatura
    doporučená literatura
  • GOETZ, Brian a Tim PEIERLS. Java concurrency in practice. Upper Saddle River, NJ: Addison-Wesley, 2006, xx, 403. ISBN 0321349601. info
  • BEN-ARI, Mordechai. Principles of concurrent and distributed programming. 2. ed. Harlow: Addison-Wesley, 2006, xv, 361. ISBN 032131283X. info
  • ANDREWS, Gregory R. Foundations of multithreaded, parallel, and distributed programming. Reading: Addison-Wesley, 2000, xx, 664 s. ISBN 0-201-35752-6. info
Výukové metody
Standardní výuka, čtení doporučené literatury, praktické řešení a programování zadaných úkolů.
Metody hodnocení
Bodované hodnocení řešení úkolů, 40% hodnocení. Ústní zkouška v průběhu zkouškového období, 60% hodnocení. Pro úspěšné absolvování nesmí být bodové hodnocení za řešení úkolů a ústní zkoušku 0.
Informace učitele
Předmět je zaměřen na teoretickou i praktickou část. Praktickou část budou studenti řešit na vlastních počítačích nebo v počítačových učebnách. Předpokládá se aktivní přístup při řešení zadaných úkolů.
Další komentáře
Studijní materiály
Předmět je vyučován každoročně.
Předmět je zařazen také v obdobích jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2014, jaro 2015.

PV192 Paralelní technické systémy

Fakulta informatiky
jaro 2012
Rozsah
2/0. 4 kr. (plus ukončení). Ukončení: zk.
Vyučující
doc. RNDr. Petr Holub, Ph.D. (přednášející)
RNDr. Lukáš Hejtmánek, Ph.D. (přednášející)
prof. Ing. Václav Přenosil, CSc. (náhr. zkoušející)
Garance
prof. Ing. Václav Přenosil, CSc.
Katedra strojového učení a zpracování dat – Fakulta informatiky
Dodavatelské pracoviště: Katedra strojového učení a zpracování dat – Fakulta informatiky
Rozvrh
Út 10:00–11:50 C511
Předpoklady
Předpokládá se znalost programování v C (na úrovni předmětu PB071) a Java (na úrovni předmětu PB162). Dále se předpokládá znalost operačního systému UNIX na uživatelské úrovni.
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Mateřské obory/plány
předmět má 35 mateřských oborů, zobrazit
Cíle předmětu
Na konci tohoto kurzu bude student schopen: rozumět principům vláknového programování včetně různých mechanismů synchronizace; vytvářet a ladit paralelní programy nad sdílenou pamětí; analyzovat paralelní algoritmy z pohledu efektivní implementace nad sdílenou pamětí.
Osnova
  • Vícevláknové prostředí, problematika sdílené paměti. Důvody paralelizace
  • Procesy a synchronizace, race conditions
  • Vlákna v jazyce C, jejich tvorba a ukončení
  • Vlákna v jazyce Java, jejich tvorba a ukončení
  • Ladění paralelních aplikací
  • Viditelnost a synchronizace operací. Signalizace mezi objekty
  • Mutexy, semafory, monitory. Pokročilé typy zámků, atomické typy a neblokující struktury
  • Zásobárny vláken a futures
  • Principy a použití OpenMP
  • Základní vzory vícevláknových aplikací. Datové struktury vhodné pro použití v paralelních algoritmech
  • Úvod do problematiky aplikací v reálném čase
  • Podpora paralelního programování v jiných programovacích jazycích.
Literatura
    doporučená literatura
  • GOETZ, Brian a Tim PEIERLS. Java concurrency in practice. Upper Saddle River, NJ: Addison-Wesley, 2006, xx, 403. ISBN 0321349601. info
  • BEN-ARI, Mordechai. Principles of concurrent and distributed programming. 2. ed. Harlow: Addison-Wesley, 2006, xv, 361. ISBN 032131283X. info
  • ANDREWS, Gregory R. Foundations of multithreaded, parallel, and distributed programming. Reading: Addison-Wesley, 2000, xx, 664 s. ISBN 0-201-35752-6. info
Výukové metody
Standardní výuka, čtení doporučené literatury, praktické řešení a programování zadaných úkolů.
Metody hodnocení
Bodované hodnocení řešení úkolů, 40% hodnocení. Ústní zkouška v průběhu zkouškového období, 60% hodnocení. Pro úspěšné absolvování nesmí být bodové hodnocení za řešení úkolů a ústní zkoušku 0.
Informace učitele
Předmět je zaměřen na teoretickou i praktickou část. Praktickou část budou studenti řešit na vlastních počítačích nebo v počítačových učebnách. Předpokládá se aktivní přístup při řešení zadaných úkolů.
Další komentáře
Studijní materiály
Předmět je vyučován každoročně.
Předmět je zařazen také v obdobích jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2013, jaro 2014, jaro 2015.

PV192 Paralelní technické systémy

Fakulta informatiky
jaro 2011
Rozsah
2/0. 4 kr. (plus ukončení). Ukončení: zk.
Vyučující
doc. RNDr. Petr Holub, Ph.D. (přednášející)
RNDr. Lukáš Hejtmánek, Ph.D. (přednášející)
prof. Ing. Václav Přenosil, CSc. (náhr. zkoušející)
Garance
prof. Ing. Václav Přenosil, CSc.
Katedra strojového učení a zpracování dat – Fakulta informatiky
Rozvrh
Čt 16:00–17:50 C511
Předpoklady
Předpokládá se znalost programování v C (na úrovni předmětu PB071) a Java (na úrovni předmětu PB162). Dále se předpokládá znalost operačního systému UNIX na uživatelské úrovni.
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Mateřské obory/plány
předmět má 33 mateřských oborů, zobrazit
Cíle předmětu
Na konci tohoto kurzu bude student schopen: rozumět principům vláknového programování včetně různých mechanismů synchronizace; vytvářet a ladit paralelní programy nad sdílenou pamětí; analyzovat paralelní algoritmy z pohledu efektivní implementace nad sdílenou pamětí.
Osnova
  • Vícevláknové prostředí, problematika sdílené paměti. Důvody paralelizace
  • Procesy a synchronizace, race conditions
  • Vlákna v jazyce C, jejich tvorba a ukončení
  • Vlákna v jazyce Java, jejich tvorba a ukončení
  • Ladění paralelních aplikací
  • Viditelnost a synchronizace operací. Signalizace mezi objekty
  • Mutexy, semafory, monitory. Pokročilé typy zámků, atomické typy a neblokující struktury
  • Zásobárny vláken a futures
  • Principy a použití OpenMP
  • Základní vzory vícevláknových aplikací. Datové struktury vhodné pro použití v paralelních algoritmech
  • Úvod do problematiky aplikací v reálném čase
  • Podpora paralelního programování v jiných programovacích jazycích.
Literatura
    doporučená literatura
  • GOETZ, Brian a Tim PEIERLS. Java concurrency in practice. Upper Saddle River, NJ: Addison-Wesley, 2006, xx, 403. ISBN 0321349601. info
  • BEN-ARI, Mordechai. Principles of concurrent and distributed programming. 2. ed. Harlow: Addison-Wesley, 2006, xv, 361. ISBN 032131283X. info
  • ANDREWS, Gregory R. Foundations of multithreaded, parallel, and distributed programming. Reading: Addison-Wesley, 2000, xx, 664 s. ISBN 0-201-35752-6. info
Výukové metody
Standardní výuka, čtení doporučené literatury, praktické řešení a programování zadaných úkolů.
Metody hodnocení
Bodované hodnocní řešení úkolů, 40% hodnocení. Ústní zkouška v průběhu zkouškového období, 60% hodnocení. Pro úspěšné absolvování nesmí být bodové hodnocení za řešení úkolů a ústní zkoušku 0.
Informace učitele
Předmět je zaměřen na teoretickou i praktickou část. Praktickou část budou studenti řešit na vlastních počítačích nebo v počítačových učebnách. Předpokládá se aktivní přístup při řešení zadaných úkolů.
Další komentáře
Studijní materiály
Předmět je vyučován každoročně.
Předmět je zařazen také v obdobích jaro 2008, jaro 2009, jaro 2010, jaro 2012, jaro 2013, jaro 2014, jaro 2015.

PV192 Paralelní technické systémy

Fakulta informatiky
jaro 2010
Rozsah
2/0. 4 kr. (plus ukončení). Ukončení: zk.
Vyučující
prof. Ing. Václav Přenosil, CSc. (přednášející)
doc. RNDr. Petr Holub, Ph.D. (přednášející)
RNDr. Lukáš Hejtmánek, Ph.D. (přednášející)
Garance
prof. Ing. Václav Přenosil, CSc.
Katedra strojového učení a zpracování dat – Fakulta informatiky
Rozvrh
Čt 16:00–17:50 C416
Předpoklady
Předpokládá se znalost programování v C (na úrovni předmětu PB071) a Java (na úrovni předmětu PB162). Dále se předpokládá znalost operačního systému UNIX na uživatelské úrovni.
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Mateřské obory/plány
předmět má 33 mateřských oborů, zobrazit
Cíle předmětu
Na konci tohoto kurzu bude student schopen: rozumět principům vláknového programování včetně různých mechanismů synchronizace; vytvářet a ladit paralelní programy nad sdílenou pamětí; analyzovat paralelní algoritmy z pohledu efektivní implementace nad sdílenou pamětí.
Osnova
  • Vícevláknové prostředí, problematika sdílené paměti. Důvody paralelizace
  • Procesy a synchronizace, race conditions
  • Vlákna v jazyce C, jejich tvorba a ukončení
  • Vlákna v jazyce Java, jejich tvorba a ukončení
  • Ladění paralelních aplikací
  • Viditelnost a synchronizace operací. Signalizace mezi objekty
  • Mutexy, semafory, monitory. Pokročilé typy zámků, atomické typy a neblokující struktury
  • Zásobárny vláken a futures
  • Principy a použití OpenMP
  • Základní vzory vícevláknových aplikací. Datové struktury vhodné pro použití v paralelních algoritmech
  • Úvod do problematiky aplikací v reálném čase
  • Podpora paralelního programování v jiných programovacích jazycích.
Literatura
    doporučená literatura
  • GOETZ, Brian a Tim PEIERLS. Java concurrency in practice. Upper Saddle River, NJ: Addison-Wesley, 2006, xx, 403. ISBN 0321349601. info
  • BEN-ARI, Mordechai. Principles of concurrent and distributed programming. 2. ed. Harlow: Addison-Wesley, 2006, xv, 361. ISBN 032131283X. info
  • ANDREWS, Gregory R. Foundations of multithreaded, parallel, and distributed programming. Reading: Addison-Wesley, 2000, xx, 664 s. ISBN 0-201-35752-6. info
Výukové metody
Standardní výuka, čtení doporučené literatury, praktické řešení a programování zadaných úkolů.
Metody hodnocení
Bodované hodnocní řešení úkolů, 40% hodnocení. Ústní zkouška v průběhu zkouškového období, 60% hodnocení. Pro úspěšné absolvování nesmí být bodové hodnocení za řešení úkolů a ústní zkoušku 0.
Informace učitele
Předmět je zaměřen na teoretickou i praktickou část. Praktickou část budou studenti řešit na vlastních počítačích nebo v počítačových učebnách. Předpokládá se aktivní přístup při řešení zadaných úkolů.
Další komentáře
Studijní materiály
Předmět je vyučován každoročně.
Předmět je zařazen také v obdobích jaro 2008, jaro 2009, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015.

PV192 Paralelní technické systémy

Fakulta informatiky
jaro 2009
Rozsah
2/0. 4 kr. (plus ukončení). Ukončení: zk.
Vyučující
prof. Ing. Václav Přenosil, CSc. (přednášející)
Garance
prof. Ing. Václav Přenosil, CSc.
Katedra strojového učení a zpracování dat – Fakulta informatiky
Rozvrh
Út 16:00–17:50 B202
Předpoklady
Předpokladem pro úspěšné studium je absolvování předmětů PA174, PA176 a PB161.
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Mateřské obory/plány
předmět má 37 mateřských oborů, zobrazit
Cíle předmětu
Základní cílem předmětu je osvojení znalostí o vlastnostech, struktuře a návrhu paralelních číslicových systémů s důrazem na:
mechanismus paralelního zpracování dat a událostí;
kooperaci výpočetních aktivit a procesů;
výměnu dat;
synchronizaci událostí.
Osnova
  • Mechanismus paralelního zpracování;
  • klasifikace paralelních systémů;
  • úrovně paralelismu;
  • typizace paralelních počítačů;
  • systémy s distribuovanou pamětí;
  • úvod do Message Passing Interface;
  • princip Message Passing Interface;
  • tvorba paralelních programů.
Literatura
  • Foster, I.: Designing and Building Parallel Programs. Addisson-Wesley, 1995.
  • Geist, A. et al: PVM: Parallel Virtual Machine - A Users' Guide and Tutorial for Networked Parallel
  • Bull, M.: Writing Parallel Programs Using OpenMP, Version 1.2. EPCC, University of Edinburgh,
  • MacDonald, N.: Writing Message-Passing Parallel Programs with MPI. Course Notes. EPCC, University of Edinburgh, 1998
Metody hodnocení
Zkouška se skládá ze dvou částí:
1) obhajoba příkladu - samostatné práce;
2) ústní odpověď na teoretickou otázku z přehledu témat ke zkoušce.
Navazující předměty
Informace učitele
Předmět je zaměřen na teoretickou i praktickou část. Praktická část bude probíhat na technickém a programovém vybavení v Laboratoři architektury a konstrukce číslicových počítačů. Vetšina studijních podkladů a veškerá technická dokumentace a návody k použití jsou k dispozici v jazyce anglickém.
Další komentáře
Předmět je vyučován každoročně.
Předmět je zařazen také v obdobích jaro 2008, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015.

PV192 Paralelní technické systémy

Fakulta informatiky
jaro 2008
Rozsah
2/0. 4 kr. (plus ukončení). Ukončení: zk.
Vyučující
prof. Ing. Václav Přenosil, CSc. (přednášející)
Garance
prof. Ing. Václav Přenosil, CSc.
Katedra strojového učení a zpracování dat – Fakulta informatiky
Rozvrh
Út 12:00–13:50 B007
Předpoklady
Žádné - bez návazností.
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Mateřské obory/plány
předmět má 37 mateřských oborů, zobrazit
Cíle předmětu
Mechanismus paralelního zpracování, kooperující výpočetní aktivity, procesy, výměna dat, synchronizaci, klasifikace paralelních systémů
Osnova
  • Mechanismus paralelního zpracování Klasifikace paralelních systémů Úrovně paralelismu Typizace paralelních počítačů Systémy s distribuovanou pamětí Úvod do Message Passing Interface Princip Message Passing Interface Tvorba paralelních programů
Literatura
  • Bull, M.: Writing Parallel Programs Using OpenMP, Version 1.2. EPCC, University of Edinburgh,
  • Geist, A. et al: PVM: Parallel Virtual Machine - A Users' Guide and Tutorial for Networked Parallel
  • Foster, I.: Designing and Building Parallel Programs. Addisson-Wesley, 1995.
  • MacDonald, N.: Writing Message-Passing Parallel Programs with MPI. Course Notes. EPCC, University of Edinburgh, 1998
Metody hodnocení
Zkouška se skládá ze dvou částí: 1) příklad - návrh komunikačního interfajsu, 2) ústní odpověď na teoretickou otázku z přehledu témat ke zkoušce.
Informace učitele
Předmět je zaměřen na teoretickou i praktickou část. Praktická část bude probíhat na technickém a programovém vybavení v Laboratoři architektury a konstrukce číslicových počítačů. Vetšina studijních podkladů a veškerá technická dokumentace a návody k použití jsou k dispozici v jazyce anglickém.
Další komentáře
Studijní materiály
Předmět je vyučován každoročně.
Předmět je zařazen také v obdobích jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015.

PV192 Paralelní technické systémy

Fakulta informatiky
jaro 2024

Předmět se v období jaro 2024 nevypisuje.

Rozsah
2/0/2. 4 kr. (plus ukončení). Ukončení: zk.
Vyučující
doc. RNDr. Petr Holub, Ph.D. (přednášející)
RNDr. Lukáš Hejtmánek, Ph.D. (přednášející)
prof. Ing. Václav Přenosil, CSc. (náhr. zkoušející)
Garance
doc. RNDr. Petr Holub, Ph.D.
Katedra strojového učení a zpracování dat – Fakulta informatiky
Dodavatelské pracoviště: Katedra strojového učení a zpracování dat – Fakulta informatiky
Předpoklady
IB109 Návrh paralelních systémů
Předpokládá se znalost programování v C (na úrovni předmětu PB071) a Java (na úrovni předmětu PB162). Dále se předpokládá znalost operačního systému UNIX na uživatelské úrovni.
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Mateřské obory/plány
předmět má 67 mateřských oborů, zobrazit
Cíle předmětu
Na konci tohoto kurzu bude student schopen: rozumět principům vláknového programování včetně různých mechanismů synchronizace; vytvářet a ladit paralelní programy nad sdílenou pamětí; analyzovat paralelní algoritmy z pohledu efektivní implementace nad sdílenou pamětí.
Osnova
  • Vícevláknové prostředí, problematika sdílené paměti. Důvody paralelizace
  • Procesy a synchronizace, race conditions
  • Vlákna v jazyce C, jejich tvorba a ukončení
  • Vlákna v jazyce Java, jejich tvorba a ukončení
  • Ladění paralelních aplikací
  • Viditelnost a synchronizace operací. Signalizace mezi objekty
  • Mutexy, semafory, monitory. Pokročilé typy zámků, atomické typy a neblokující struktury
  • Zásobárny vláken a futures
  • Principy a použití OpenMP
  • Základní vzory vícevláknových aplikací. Datové struktury vhodné pro použití v paralelních algoritmech
  • Úvod do problematiky aplikací v reálném čase
  • Podpora paralelního programování v jiných programovacích jazycích.
Literatura
    doporučená literatura
  • GOETZ, Brian a Tim PEIERLS. Java concurrency in practice. Upper Saddle River, NJ: Addison-Wesley, 2006, xx, 403. ISBN 0321349601. info
  • BEN-ARI, Mordechai. Principles of concurrent and distributed programming. 2. ed. Harlow: Addison-Wesley, 2006, xv, 361. ISBN 032131283X. info
  • ANDREWS, Gregory R. Foundations of multithreaded, parallel, and distributed programming. Reading: Addison-Wesley, 2000, xx, 664 s. ISBN 0-201-35752-6. info
Výukové metody
Standardní výuka, čtení doporučené literatury, praktické řešení a programování zadaných úkolů.
Metody hodnocení
Bodované hodnocení řešení úkolů, 40% hodnocení. Ústní zkouška v průběhu zkouškového období, 60% hodnocení. Pro úspěšné absolvování nesmí být bodové hodnocení za řešení úkolů a ústní zkoušku 0.
Informace učitele
Předmět je zaměřen na teoretickou i praktickou část. Praktickou část budou studenti řešit na vlastních počítačích nebo v počítačových učebnách. Předpokládá se aktivní přístup při řešení zadaných úkolů.
Další komentáře
Předmět je vyučován každoročně.
Výuka probíhá každý týden.
Předmět je zařazen také v obdobích jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015.

PV192 Paralelní technické systémy

Fakulta informatiky
jaro 2023

Předmět se v období jaro 2023 nevypisuje.

Rozsah
2/0/2. 4 kr. (plus ukončení). Ukončení: zk.
Vyučující
doc. RNDr. Petr Holub, Ph.D. (přednášející)
RNDr. Lukáš Hejtmánek, Ph.D. (přednášející)
prof. Ing. Václav Přenosil, CSc. (náhr. zkoušející)
Garance
doc. RNDr. Petr Holub, Ph.D.
Katedra strojového učení a zpracování dat – Fakulta informatiky
Dodavatelské pracoviště: Katedra strojového učení a zpracování dat – Fakulta informatiky
Předpoklady
IB109 Návrh paralelních systémů
Předpokládá se znalost programování v C (na úrovni předmětu PB071) a Java (na úrovni předmětu PB162). Dále se předpokládá znalost operačního systému UNIX na uživatelské úrovni.
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Mateřské obory/plány
předmět má 67 mateřských oborů, zobrazit
Cíle předmětu
Na konci tohoto kurzu bude student schopen: rozumět principům vláknového programování včetně různých mechanismů synchronizace; vytvářet a ladit paralelní programy nad sdílenou pamětí; analyzovat paralelní algoritmy z pohledu efektivní implementace nad sdílenou pamětí.
Osnova
  • Vícevláknové prostředí, problematika sdílené paměti. Důvody paralelizace
  • Procesy a synchronizace, race conditions
  • Vlákna v jazyce C, jejich tvorba a ukončení
  • Vlákna v jazyce Java, jejich tvorba a ukončení
  • Ladění paralelních aplikací
  • Viditelnost a synchronizace operací. Signalizace mezi objekty
  • Mutexy, semafory, monitory. Pokročilé typy zámků, atomické typy a neblokující struktury
  • Zásobárny vláken a futures
  • Principy a použití OpenMP
  • Základní vzory vícevláknových aplikací. Datové struktury vhodné pro použití v paralelních algoritmech
  • Úvod do problematiky aplikací v reálném čase
  • Podpora paralelního programování v jiných programovacích jazycích.
Literatura
    doporučená literatura
  • GOETZ, Brian a Tim PEIERLS. Java concurrency in practice. Upper Saddle River, NJ: Addison-Wesley, 2006, xx, 403. ISBN 0321349601. info
  • BEN-ARI, Mordechai. Principles of concurrent and distributed programming. 2. ed. Harlow: Addison-Wesley, 2006, xv, 361. ISBN 032131283X. info
  • ANDREWS, Gregory R. Foundations of multithreaded, parallel, and distributed programming. Reading: Addison-Wesley, 2000, xx, 664 s. ISBN 0-201-35752-6. info
Výukové metody
Standardní výuka, čtení doporučené literatury, praktické řešení a programování zadaných úkolů.
Metody hodnocení
Bodované hodnocení řešení úkolů, 40% hodnocení. Ústní zkouška v průběhu zkouškového období, 60% hodnocení. Pro úspěšné absolvování nesmí být bodové hodnocení za řešení úkolů a ústní zkoušku 0.
Informace učitele
Předmět je zaměřen na teoretickou i praktickou část. Praktickou část budou studenti řešit na vlastních počítačích nebo v počítačových učebnách. Předpokládá se aktivní přístup při řešení zadaných úkolů.
Další komentáře
Předmět je vyučován každoročně.
Výuka probíhá každý týden.
Předmět je zařazen také v obdobích jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015.

PV192 Paralelní technické systémy

Fakulta informatiky
jaro 2022

Předmět se v období jaro 2022 nevypisuje.

Rozsah
2/0/2. 4 kr. (plus ukončení). Ukončení: zk.
Vyučující
doc. RNDr. Petr Holub, Ph.D. (přednášející)
RNDr. Lukáš Hejtmánek, Ph.D. (přednášející)
prof. Ing. Václav Přenosil, CSc. (náhr. zkoušející)
Garance
doc. RNDr. Petr Holub, Ph.D.
Katedra strojového učení a zpracování dat – Fakulta informatiky
Dodavatelské pracoviště: Katedra strojového učení a zpracování dat – Fakulta informatiky
Předpoklady
IB109 Návrh paralelních systémů
Předpokládá se znalost programování v C (na úrovni předmětu PB071) a Java (na úrovni předmětu PB162). Dále se předpokládá znalost operačního systému UNIX na uživatelské úrovni.
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Mateřské obory/plány
předmět má 67 mateřských oborů, zobrazit
Cíle předmětu
Na konci tohoto kurzu bude student schopen: rozumět principům vláknového programování včetně různých mechanismů synchronizace; vytvářet a ladit paralelní programy nad sdílenou pamětí; analyzovat paralelní algoritmy z pohledu efektivní implementace nad sdílenou pamětí.
Osnova
  • Vícevláknové prostředí, problematika sdílené paměti. Důvody paralelizace
  • Procesy a synchronizace, race conditions
  • Vlákna v jazyce C, jejich tvorba a ukončení
  • Vlákna v jazyce Java, jejich tvorba a ukončení
  • Ladění paralelních aplikací
  • Viditelnost a synchronizace operací. Signalizace mezi objekty
  • Mutexy, semafory, monitory. Pokročilé typy zámků, atomické typy a neblokující struktury
  • Zásobárny vláken a futures
  • Principy a použití OpenMP
  • Základní vzory vícevláknových aplikací. Datové struktury vhodné pro použití v paralelních algoritmech
  • Úvod do problematiky aplikací v reálném čase
  • Podpora paralelního programování v jiných programovacích jazycích.
Literatura
    doporučená literatura
  • GOETZ, Brian a Tim PEIERLS. Java concurrency in practice. Upper Saddle River, NJ: Addison-Wesley, 2006, xx, 403. ISBN 0321349601. info
  • BEN-ARI, Mordechai. Principles of concurrent and distributed programming. 2. ed. Harlow: Addison-Wesley, 2006, xv, 361. ISBN 032131283X. info
  • ANDREWS, Gregory R. Foundations of multithreaded, parallel, and distributed programming. Reading: Addison-Wesley, 2000, xx, 664 s. ISBN 0-201-35752-6. info
Výukové metody
Standardní výuka, čtení doporučené literatury, praktické řešení a programování zadaných úkolů.
Metody hodnocení
Bodované hodnocení řešení úkolů, 40% hodnocení. Ústní zkouška v průběhu zkouškového období, 60% hodnocení. Pro úspěšné absolvování nesmí být bodové hodnocení za řešení úkolů a ústní zkoušku 0.
Informace učitele
Předmět je zaměřen na teoretickou i praktickou část. Praktickou část budou studenti řešit na vlastních počítačích nebo v počítačových učebnách. Předpokládá se aktivní přístup při řešení zadaných úkolů.
Další komentáře
Předmět je vyučován každoročně.
Výuka probíhá každý týden.
Předmět je zařazen také v obdobích jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015.

PV192 Paralelní technické systémy

Fakulta informatiky
jaro 2021

Předmět se v období jaro 2021 nevypisuje.

Rozsah
2/0/2. 4 kr. (plus ukončení). Ukončení: zk.
Vyučující
doc. RNDr. Petr Holub, Ph.D. (přednášející)
RNDr. Lukáš Hejtmánek, Ph.D. (přednášející)
prof. Ing. Václav Přenosil, CSc. (náhr. zkoušející)
Garance
doc. RNDr. Petr Holub, Ph.D.
Katedra strojového učení a zpracování dat – Fakulta informatiky
Dodavatelské pracoviště: Katedra strojového učení a zpracování dat – Fakulta informatiky
Předpoklady
IB109 Návrh paralelních systémů
Předpokládá se znalost programování v C (na úrovni předmětu PB071) a Java (na úrovni předmětu PB162). Dále se předpokládá znalost operačního systému UNIX na uživatelské úrovni.
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Mateřské obory/plány
předmět má 67 mateřských oborů, zobrazit
Cíle předmětu
Na konci tohoto kurzu bude student schopen: rozumět principům vláknového programování včetně různých mechanismů synchronizace; vytvářet a ladit paralelní programy nad sdílenou pamětí; analyzovat paralelní algoritmy z pohledu efektivní implementace nad sdílenou pamětí.
Osnova
  • Vícevláknové prostředí, problematika sdílené paměti. Důvody paralelizace
  • Procesy a synchronizace, race conditions
  • Vlákna v jazyce C, jejich tvorba a ukončení
  • Vlákna v jazyce Java, jejich tvorba a ukončení
  • Ladění paralelních aplikací
  • Viditelnost a synchronizace operací. Signalizace mezi objekty
  • Mutexy, semafory, monitory. Pokročilé typy zámků, atomické typy a neblokující struktury
  • Zásobárny vláken a futures
  • Principy a použití OpenMP
  • Základní vzory vícevláknových aplikací. Datové struktury vhodné pro použití v paralelních algoritmech
  • Úvod do problematiky aplikací v reálném čase
  • Podpora paralelního programování v jiných programovacích jazycích.
Literatura
    doporučená literatura
  • GOETZ, Brian a Tim PEIERLS. Java concurrency in practice. Upper Saddle River, NJ: Addison-Wesley, 2006, xx, 403. ISBN 0321349601. info
  • BEN-ARI, Mordechai. Principles of concurrent and distributed programming. 2. ed. Harlow: Addison-Wesley, 2006, xv, 361. ISBN 032131283X. info
  • ANDREWS, Gregory R. Foundations of multithreaded, parallel, and distributed programming. Reading: Addison-Wesley, 2000, xx, 664 s. ISBN 0-201-35752-6. info
Výukové metody
Standardní výuka, čtení doporučené literatury, praktické řešení a programování zadaných úkolů.
Metody hodnocení
Bodované hodnocení řešení úkolů, 40% hodnocení. Ústní zkouška v průběhu zkouškového období, 60% hodnocení. Pro úspěšné absolvování nesmí být bodové hodnocení za řešení úkolů a ústní zkoušku 0.
Informace učitele
Předmět je zaměřen na teoretickou i praktickou část. Praktickou část budou studenti řešit na vlastních počítačích nebo v počítačových učebnách. Předpokládá se aktivní přístup při řešení zadaných úkolů.
Další komentáře
Předmět je vyučován každoročně.
Výuka probíhá každý týden.
Předmět je zařazen také v obdobích jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015.

PV192 Paralelní technické systémy

Fakulta informatiky
jaro 2020

Předmět se v období jaro 2020 nevypisuje.

Rozsah
2/0/2. 4 kr. (plus ukončení). Ukončení: zk.
Vyučující
doc. RNDr. Petr Holub, Ph.D. (přednášející)
RNDr. Lukáš Hejtmánek, Ph.D. (přednášející)
prof. Ing. Václav Přenosil, CSc. (náhr. zkoušející)
Garance
doc. RNDr. Petr Holub, Ph.D.
Katedra strojového učení a zpracování dat – Fakulta informatiky
Dodavatelské pracoviště: Katedra strojového učení a zpracování dat – Fakulta informatiky
Předpoklady
IB109 Návrh paralelních systémů
Předpokládá se znalost programování v C (na úrovni předmětu PB071) a Java (na úrovni předmětu PB162). Dále se předpokládá znalost operačního systému UNIX na uživatelské úrovni.
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Mateřské obory/plány
předmět má 67 mateřských oborů, zobrazit
Cíle předmětu
Na konci tohoto kurzu bude student schopen: rozumět principům vláknového programování včetně různých mechanismů synchronizace; vytvářet a ladit paralelní programy nad sdílenou pamětí; analyzovat paralelní algoritmy z pohledu efektivní implementace nad sdílenou pamětí.
Osnova
  • Vícevláknové prostředí, problematika sdílené paměti. Důvody paralelizace
  • Procesy a synchronizace, race conditions
  • Vlákna v jazyce C, jejich tvorba a ukončení
  • Vlákna v jazyce Java, jejich tvorba a ukončení
  • Ladění paralelních aplikací
  • Viditelnost a synchronizace operací. Signalizace mezi objekty
  • Mutexy, semafory, monitory. Pokročilé typy zámků, atomické typy a neblokující struktury
  • Zásobárny vláken a futures
  • Principy a použití OpenMP
  • Základní vzory vícevláknových aplikací. Datové struktury vhodné pro použití v paralelních algoritmech
  • Úvod do problematiky aplikací v reálném čase
  • Podpora paralelního programování v jiných programovacích jazycích.
Literatura
    doporučená literatura
  • GOETZ, Brian a Tim PEIERLS. Java concurrency in practice. Upper Saddle River, NJ: Addison-Wesley, 2006, xx, 403. ISBN 0321349601. info
  • BEN-ARI, Mordechai. Principles of concurrent and distributed programming. 2. ed. Harlow: Addison-Wesley, 2006, xv, 361. ISBN 032131283X. info
  • ANDREWS, Gregory R. Foundations of multithreaded, parallel, and distributed programming. Reading: Addison-Wesley, 2000, xx, 664 s. ISBN 0-201-35752-6. info
Výukové metody
Standardní výuka, čtení doporučené literatury, praktické řešení a programování zadaných úkolů.
Metody hodnocení
Bodované hodnocení řešení úkolů, 40% hodnocení. Ústní zkouška v průběhu zkouškového období, 60% hodnocení. Pro úspěšné absolvování nesmí být bodové hodnocení za řešení úkolů a ústní zkoušku 0.
Informace učitele
Předmět je zaměřen na teoretickou i praktickou část. Praktickou část budou studenti řešit na vlastních počítačích nebo v počítačových učebnách. Předpokládá se aktivní přístup při řešení zadaných úkolů.
Další komentáře
Předmět je vyučován každoročně.
Výuka probíhá každý týden.
Předmět je zařazen také v obdobích jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015.

PV192 Paralelní technické systémy

Fakulta informatiky
jaro 2019

Předmět se v období jaro 2019 nevypisuje.

Rozsah
2/0/2. 4 kr. (plus ukončení). Ukončení: zk.
Vyučující
doc. RNDr. Petr Holub, Ph.D. (přednášející)
RNDr. Lukáš Hejtmánek, Ph.D. (přednášející)
prof. Ing. Václav Přenosil, CSc. (náhr. zkoušející)
Garance
doc. RNDr. Aleš Horák, Ph.D.
Katedra strojového učení a zpracování dat – Fakulta informatiky
Dodavatelské pracoviště: Katedra strojového učení a zpracování dat – Fakulta informatiky
Předpoklady
IB109 Návrh paralelních systémů
Předpokládá se znalost programování v C (na úrovni předmětu PB071) a Java (na úrovni předmětu PB162). Dále se předpokládá znalost operačního systému UNIX na uživatelské úrovni.
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Mateřské obory/plány
předmět má 30 mateřských oborů, zobrazit
Cíle předmětu
Na konci tohoto kurzu bude student schopen: rozumět principům vláknového programování včetně různých mechanismů synchronizace; vytvářet a ladit paralelní programy nad sdílenou pamětí; analyzovat paralelní algoritmy z pohledu efektivní implementace nad sdílenou pamětí.
Osnova
  • Vícevláknové prostředí, problematika sdílené paměti. Důvody paralelizace
  • Procesy a synchronizace, race conditions
  • Vlákna v jazyce C, jejich tvorba a ukončení
  • Vlákna v jazyce Java, jejich tvorba a ukončení
  • Ladění paralelních aplikací
  • Viditelnost a synchronizace operací. Signalizace mezi objekty
  • Mutexy, semafory, monitory. Pokročilé typy zámků, atomické typy a neblokující struktury
  • Zásobárny vláken a futures
  • Principy a použití OpenMP
  • Základní vzory vícevláknových aplikací. Datové struktury vhodné pro použití v paralelních algoritmech
  • Úvod do problematiky aplikací v reálném čase
  • Podpora paralelního programování v jiných programovacích jazycích.
Literatura
    doporučená literatura
  • GOETZ, Brian a Tim PEIERLS. Java concurrency in practice. Upper Saddle River, NJ: Addison-Wesley, 2006, xx, 403. ISBN 0321349601. info
  • BEN-ARI, Mordechai. Principles of concurrent and distributed programming. 2. ed. Harlow: Addison-Wesley, 2006, xv, 361. ISBN 032131283X. info
  • ANDREWS, Gregory R. Foundations of multithreaded, parallel, and distributed programming. Reading: Addison-Wesley, 2000, xx, 664 s. ISBN 0-201-35752-6. info
Výukové metody
Standardní výuka, čtení doporučené literatury, praktické řešení a programování zadaných úkolů.
Metody hodnocení
Bodované hodnocení řešení úkolů, 40% hodnocení. Ústní zkouška v průběhu zkouškového období, 60% hodnocení. Pro úspěšné absolvování nesmí být bodové hodnocení za řešení úkolů a ústní zkoušku 0.
Informace učitele
Předmět je zaměřen na teoretickou i praktickou část. Praktickou část budou studenti řešit na vlastních počítačích nebo v počítačových učebnách. Předpokládá se aktivní přístup při řešení zadaných úkolů.
Další komentáře
Předmět je vyučován každoročně.
Výuka probíhá každý týden.
Předmět je zařazen také v obdobích jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015.

PV192 Paralelní technické systémy

Fakulta informatiky
jaro 2018

Předmět se v období jaro 2018 nevypisuje.

Rozsah
2/0/2. 4 kr. (plus ukončení). Ukončení: zk.
Vyučující
doc. RNDr. Petr Holub, Ph.D. (přednášející)
RNDr. Lukáš Hejtmánek, Ph.D. (přednášející)
prof. Ing. Václav Přenosil, CSc. (náhr. zkoušející)
Garance
doc. RNDr. Aleš Horák, Ph.D.
Katedra strojového učení a zpracování dat – Fakulta informatiky
Dodavatelské pracoviště: Katedra strojového učení a zpracování dat – Fakulta informatiky
Předpoklady
IB109 Návrh paralelních systémů
Předpokládá se znalost programování v C (na úrovni předmětu PB071) a Java (na úrovni předmětu PB162). Dále se předpokládá znalost operačního systému UNIX na uživatelské úrovni.
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Mateřské obory/plány
předmět má 30 mateřských oborů, zobrazit
Cíle předmětu
Na konci tohoto kurzu bude student schopen: rozumět principům vláknového programování včetně různých mechanismů synchronizace; vytvářet a ladit paralelní programy nad sdílenou pamětí; analyzovat paralelní algoritmy z pohledu efektivní implementace nad sdílenou pamětí.
Osnova
  • Vícevláknové prostředí, problematika sdílené paměti. Důvody paralelizace
  • Procesy a synchronizace, race conditions
  • Vlákna v jazyce C, jejich tvorba a ukončení
  • Vlákna v jazyce Java, jejich tvorba a ukončení
  • Ladění paralelních aplikací
  • Viditelnost a synchronizace operací. Signalizace mezi objekty
  • Mutexy, semafory, monitory. Pokročilé typy zámků, atomické typy a neblokující struktury
  • Zásobárny vláken a futures
  • Principy a použití OpenMP
  • Základní vzory vícevláknových aplikací. Datové struktury vhodné pro použití v paralelních algoritmech
  • Úvod do problematiky aplikací v reálném čase
  • Podpora paralelního programování v jiných programovacích jazycích.
Literatura
    doporučená literatura
  • GOETZ, Brian a Tim PEIERLS. Java concurrency in practice. Upper Saddle River, NJ: Addison-Wesley, 2006, xx, 403. ISBN 0321349601. info
  • BEN-ARI, Mordechai. Principles of concurrent and distributed programming. 2. ed. Harlow: Addison-Wesley, 2006, xv, 361. ISBN 032131283X. info
  • ANDREWS, Gregory R. Foundations of multithreaded, parallel, and distributed programming. Reading: Addison-Wesley, 2000, xx, 664 s. ISBN 0-201-35752-6. info
Výukové metody
Standardní výuka, čtení doporučené literatury, praktické řešení a programování zadaných úkolů.
Metody hodnocení
Bodované hodnocení řešení úkolů, 40% hodnocení. Ústní zkouška v průběhu zkouškového období, 60% hodnocení. Pro úspěšné absolvování nesmí být bodové hodnocení za řešení úkolů a ústní zkoušku 0.
Informace učitele
Předmět je zaměřen na teoretickou i praktickou část. Praktickou část budou studenti řešit na vlastních počítačích nebo v počítačových učebnách. Předpokládá se aktivní přístup při řešení zadaných úkolů.
Další komentáře
Předmět je vyučován každoročně.
Výuka probíhá každý týden.
Předmět je zařazen také v obdobích jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015.

PV192 Paralelní technické systémy

Fakulta informatiky
jaro 2017

Předmět se v období jaro 2017 nevypisuje.

Rozsah
2/0/2. 4 kr. (plus ukončení). Ukončení: zk.
Vyučující
doc. RNDr. Petr Holub, Ph.D. (přednášející)
RNDr. Lukáš Hejtmánek, Ph.D. (přednášející)
prof. Ing. Václav Přenosil, CSc. (náhr. zkoušející)
Garance
doc. RNDr. Aleš Horák, Ph.D.
Katedra strojového učení a zpracování dat – Fakulta informatiky
Dodavatelské pracoviště: Katedra strojového učení a zpracování dat – Fakulta informatiky
Předpoklady
IB109 Návrh paralelních systémů
Předpokládá se znalost programování v C (na úrovni předmětu PB071) a Java (na úrovni předmětu PB162). Dále se předpokládá znalost operačního systému UNIX na uživatelské úrovni.
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Mateřské obory/plány
předmět má 30 mateřských oborů, zobrazit
Cíle předmětu
Na konci tohoto kurzu bude student schopen: rozumět principům vláknového programování včetně různých mechanismů synchronizace; vytvářet a ladit paralelní programy nad sdílenou pamětí; analyzovat paralelní algoritmy z pohledu efektivní implementace nad sdílenou pamětí.
Osnova
  • Vícevláknové prostředí, problematika sdílené paměti. Důvody paralelizace
  • Procesy a synchronizace, race conditions
  • Vlákna v jazyce C, jejich tvorba a ukončení
  • Vlákna v jazyce Java, jejich tvorba a ukončení
  • Ladění paralelních aplikací
  • Viditelnost a synchronizace operací. Signalizace mezi objekty
  • Mutexy, semafory, monitory. Pokročilé typy zámků, atomické typy a neblokující struktury
  • Zásobárny vláken a futures
  • Principy a použití OpenMP
  • Základní vzory vícevláknových aplikací. Datové struktury vhodné pro použití v paralelních algoritmech
  • Úvod do problematiky aplikací v reálném čase
  • Podpora paralelního programování v jiných programovacích jazycích.
Literatura
    doporučená literatura
  • GOETZ, Brian a Tim PEIERLS. Java concurrency in practice. Upper Saddle River, NJ: Addison-Wesley, 2006, xx, 403. ISBN 0321349601. info
  • BEN-ARI, Mordechai. Principles of concurrent and distributed programming. 2. ed. Harlow: Addison-Wesley, 2006, xv, 361. ISBN 032131283X. info
  • ANDREWS, Gregory R. Foundations of multithreaded, parallel, and distributed programming. Reading: Addison-Wesley, 2000, xx, 664 s. ISBN 0-201-35752-6. info
Výukové metody
Standardní výuka, čtení doporučené literatury, praktické řešení a programování zadaných úkolů.
Metody hodnocení
Bodované hodnocení řešení úkolů, 40% hodnocení. Ústní zkouška v průběhu zkouškového období, 60% hodnocení. Pro úspěšné absolvování nesmí být bodové hodnocení za řešení úkolů a ústní zkoušku 0.
Informace učitele
Předmět je zaměřen na teoretickou i praktickou část. Praktickou část budou studenti řešit na vlastních počítačích nebo v počítačových učebnách. Předpokládá se aktivní přístup při řešení zadaných úkolů.
Další komentáře
Předmět je vyučován každoročně.
Výuka probíhá každý týden.
Předmět je zařazen také v obdobích jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015.

PV192 Paralelní technické systémy

Fakulta informatiky
jaro 2016

Předmět se v období jaro 2016 nevypisuje.

Rozsah
2/0/2. 4 kr. (plus ukončení). Ukončení: zk.
Vyučující
doc. RNDr. Petr Holub, Ph.D. (přednášející)
RNDr. Lukáš Hejtmánek, Ph.D. (přednášející)
prof. Ing. Václav Přenosil, CSc. (náhr. zkoušející)
Garance
doc. RNDr. Aleš Horák, Ph.D.
Katedra strojového učení a zpracování dat – Fakulta informatiky
Dodavatelské pracoviště: Katedra strojového učení a zpracování dat – Fakulta informatiky
Předpoklady
IB109 Návrh paralelních systémů
Předpokládá se znalost programování v C (na úrovni předmětu PB071) a Java (na úrovni předmětu PB162). Dále se předpokládá znalost operačního systému UNIX na uživatelské úrovni.
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Mateřské obory/plány
předmět má 30 mateřských oborů, zobrazit
Cíle předmětu
Na konci tohoto kurzu bude student schopen: rozumět principům vláknového programování včetně různých mechanismů synchronizace; vytvářet a ladit paralelní programy nad sdílenou pamětí; analyzovat paralelní algoritmy z pohledu efektivní implementace nad sdílenou pamětí.
Osnova
  • Vícevláknové prostředí, problematika sdílené paměti. Důvody paralelizace
  • Procesy a synchronizace, race conditions
  • Vlákna v jazyce C, jejich tvorba a ukončení
  • Vlákna v jazyce Java, jejich tvorba a ukončení
  • Ladění paralelních aplikací
  • Viditelnost a synchronizace operací. Signalizace mezi objekty
  • Mutexy, semafory, monitory. Pokročilé typy zámků, atomické typy a neblokující struktury
  • Zásobárny vláken a futures
  • Principy a použití OpenMP
  • Základní vzory vícevláknových aplikací. Datové struktury vhodné pro použití v paralelních algoritmech
  • Úvod do problematiky aplikací v reálném čase
  • Podpora paralelního programování v jiných programovacích jazycích.
Literatura
    doporučená literatura
  • GOETZ, Brian a Tim PEIERLS. Java concurrency in practice. Upper Saddle River, NJ: Addison-Wesley, 2006, xx, 403. ISBN 0321349601. info
  • BEN-ARI, Mordechai. Principles of concurrent and distributed programming. 2. ed. Harlow: Addison-Wesley, 2006, xv, 361. ISBN 032131283X. info
  • ANDREWS, Gregory R. Foundations of multithreaded, parallel, and distributed programming. Reading: Addison-Wesley, 2000, xx, 664 s. ISBN 0-201-35752-6. info
Výukové metody
Standardní výuka, čtení doporučené literatury, praktické řešení a programování zadaných úkolů.
Metody hodnocení
Bodované hodnocení řešení úkolů, 40% hodnocení. Ústní zkouška v průběhu zkouškového období, 60% hodnocení. Pro úspěšné absolvování nesmí být bodové hodnocení za řešení úkolů a ústní zkoušku 0.
Informace učitele
Předmět je zaměřen na teoretickou i praktickou část. Praktickou část budou studenti řešit na vlastních počítačích nebo v počítačových učebnách. Předpokládá se aktivní přístup při řešení zadaných úkolů.
Další komentáře
Předmět je vyučován každoročně.
Výuka probíhá každý týden.
Předmět je zařazen také v obdobích jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015.

PV192 Paralelní algoritmy

Fakulta informatiky
jaro 2007

Předmět se v období jaro 2007 nevypisuje.

Rozsah
2/0. 4 kr. (plus ukončení). Ukončení: zk.
Vyučující
prof. Ing. Václav Přenosil, CSc. (přednášející)
Garance
prof. Ing. Václav Přenosil, CSc.
Katedra strojového učení a zpracování dat – Fakulta informatiky
Předpoklady
Žádné - bez návazností.
Omezení zápisu do předmětu
Předmět je nabízen i studentům mimo mateřské obory.
Mateřské obory/plány
Cíle předmětu
Mechanismus paralelního zpracování, kooperující výpočetní aktivity, procesy, výměna dat, synchronizaci, klasifikace paralelních systémů
Osnova
  • Mechanismus paralelního zpracování Klasifikace paralelních systémů Úrovně paralelismu Typizace paralelních počítačů Systémy s distribuovanou pamětí Úvod do Message Passing Interface Princip Message Passing Interface Tvorba paralelních programů
Literatura
  • Bull, M.: Writing Parallel Programs Using OpenMP, Version 1.2. EPCC, University of Edinburgh,
  • Geist, A. et al: PVM: Parallel Virtual Machine - A Users' Guide and Tutorial for Networked Parallel
  • Foster, I.: Designing and Building Parallel Programs. Addisson-Wesley, 1995.
  • MacDonald, N.: Writing Message-Passing Parallel Programs with MPI. Course Notes. EPCC, University of Edinburgh, 1998
Metody hodnocení
Zkouška se skládá ze dvou částí: 1) příklad - návrh komunikačního interfajsu, 2) ústní odpověď na teoretickou otázku z přehledu témat ke zkoušce.
Informace učitele
Předmět je zaměřen na teoretickou i praktickou část. Praktická část bude probíhat na technickém a programovém vybavení v Laboratoři architektury a konstrukce číslicových počítačů. Vetšina studijních podkladů a veškerá technická dokumentace a návody k použití jsou k dispozici v jazyce anglickém.
Další komentáře
Předmět je vyučován každoročně.
Výuka probíhá každý týden.
Předmět je zařazen také v obdobích jaro 2008, jaro 2009, jaro 2010, jaro 2011, jaro 2012, jaro 2013, jaro 2014, jaro 2015.