Paralelní programování

Slides:



Advertisements
Podobné prezentace
Lineární klasifikátor
Advertisements

CIT Paměti Díl X.
Stavový prostor. • Existují úlohy, pro které není k dispozici univerzální algoritmus řešení • různé hry • problém batohu, problém obchodního cestujícího.
Zásobník (LiFo) Fronta (FiFo)
ČÍSLICOVÁ TECHNIKA Paměťové registry
Operační systémy. OPERAČNÍ SYSTÉMY pomoc operátorovi, podpora vlastností reálného času, víceuživatelských a více úlohových systémů.
PROGRAM PRO VÝUKU T ČLÁNKU
Paralelní programování
Varianty Turingova stroje Výpočet funkcí pomocí TS
Paralelní programování
Ř ADIČ RASTROVÝ, ELEKTROLUMINISCEN ČNÍ A VEKTOROVÝ.
Vyhledávání dat podle určených kritérií Máte za úkol vytvořit databázi klientů v bance s jejich osobními údaji, čísly účtů a konečnými zůstatky na těchto.
SOLID STATE DISK - SSD.
13AMP 6. přednáška Ing. Martin Molhanec, CSc.. Co jsme se naučili naposled Synchronizace procesů Synchronizace procesů Producent-Konzument Producent-Konzument.
Teoretická informatika Tomáš Foltýnek Paralelní programování.
Modely konzistentnosti Ladislav Kotal PDS 2008Ladislav Kotal2 Konzistentnost Konzistentní = soudržný, neporušený, pevný Konzistenční model = dohoda.
David Rozlílek ME4B. Co jsou to paměti ? slouží k uložení programu, kteý řídí ? Slouží k ukládaní…..?.... a ……? operací v.
Autor:Jiří Gregor Předmět/vzdělávací oblast: Digitální technika Tematická oblast:Digitální technika Téma:Paměti – úvod, základní pojmy Ročník:3. Datum.
13AMP 3. přednáška Ing. Martin Molhanec, CSc.. Co jsme se naučili naposled I. Co je to kontext úlohy Co je to kontext úlohy Task switching (přepnutí úlohy)
Transakce Roman Špánek TU v Liberci Transakce Transakce = série příkazů čtení a zápisu do databáze A Atomic C Consistency I Isolation D Durability.
Petriho sítě.
David Klíma- 1 - Opáčko Jaké jsou typy pamětí? Co je to RAM, kde jí najdu? Co je paměť cache? Které paměťi se používají v současných základních deskách.
7. Typ soubor Souborem dat běžně rozumíme uspořádanou množinu dat, uloženou mimo operační paměť počítače (na disku). Pascalský soubor je abstrakcí skutečného.
Název školyIntegrovaná střední škola technická, Vysoké Mýto, Mládežnická 380 Číslo a název projektuCZ.1.07/1.5.00/ Inovace vzdělávacích metod EU.
11. přednáška politika přidělování místa, trashing -algoritmy určení oběti -souběžnost procesů -kritická sekce (co je to, požadavky, možnosti.
Roman Kysel.  Jaké jsou základní parametry pamětí ? ◦ Kapacita ◦ přístupová doba ◦ přístupová rychlost ◦ Statičnost/dynamičnost ◦ Energetická závislost.
UNIX Shell skripty Roman Danel VŠB TU Ostrava, Hornicko – geologická fakulta.
PA152Notes 101 CS 245: Database System Principles Notes 10: More TP Hector Garcia-Molina Pavel Rychlý.
Ondřej Šebesta. – Ka – Přístupová …... – přístupová rychlost – S /d – Energetická závislost – Přístup k paměti – Spolehlivost.
Zablokování (deadlock, smrtelné objetí, uváznutí)
Distribuovaná sdílená paměť Přednášky z Distribuovaných systémů Ing. Jiří Ledvina, CSc.
A4B33OSS (J. Lažanský) verze: Podzim 2010 Meziprocesní komunikace a synchronizace procesů 1 Obsah Téma 5 – Meziprocesní komunikace a synchronizace procesů.
A4B33OSS (J. Lažanský) verze: Podzim 2013 Meziprocesní komunikace a synchronizace procesů 1 Obsah Téma 5 – Synchronizace procesů a problém uváznutí 1.Problém.
13AMP 4. přednáška Ing. Martin Molhanec, CSc.. Co jsme se naučili naposled Problém sdílených zdrojů Problém sdílených zdrojů Co je to kritická sekce Co.
Real time jádro operačního systému Lukáš Hamáček.
PB169 – Operační systémy a sítě Řízení přístupu k médiu, MAC Marek Kumpošt, Zdeněk Říha.
FEL Komunikátor. Memory Leak program konsumuje operační paměť, kterou neumožňuje uvolnit o uvolnění paměti stará Garbage Collector ▫plně v režii Java.
VY_32_INOVACE_MAT_VA_03 Digitální učební materiál Sada: Matematika Téma: Grafické řešení soustav lineárních rovnic Autor: Mgr. Eva Vaňková Předmět: Matematika.
A3B33OSD (J. Lažanský) verze: Jaro 2013 Synchronizace procesů a problém uváznutí 1 Obsah Téma 5 – Synchronizace procesů a problém uváznutí 1.Problém soupeření,
Doc. Josef Kolář (ČVUT)Prohledávání grafůGRA, LS 2010/11, Lekce 4 1 / 15Doc. Josef Kolář (ČVUT)Prohledávání stavového prostoruGRA, LS 2013/14, Lekce 11.
Základy operačních systémů Meziprocesová komunikace a synchronizace Jakub Yaghob.
Doc. Josef Kolář (ČVUT)Prohledávání grafůGRA, LS 2010/11, Lekce 4 1 / 15Doc. Josef Kolář (ČVUT)NP-úplné problémyGRA, LS 2012/13, Lekce 13 1 / 14 NP-ÚPLNÉ.
Ondřej Šebesta. – Kapacita – přístupová doba – přístupová rychlost – Statičnost/dynamičnost – Energetická závislost – Přístup k paměti – Spolehlivost.
Orbis pictus 21. století Tento projekt je spolufinancován Evropským sociálním fondem a státním rozpočtem České republiky Dekodéry Teletextu Dekodéry Teletextu.
Vnitřní záznamová média. © Mgr. Petr Loskot
Úvod do databází zkrácená verze.
Orbis pictus 21. století Tento projekt je spolufinancován Evropským sociálním fondem a státním rozpočtem České republiky Blokové schéma počítače.
Operační systémy LS 2014/ přednáška 20. dubna 2015.
Uvedení autoři, není-li uvedeno jinak, jsou autory tohoto výukového materiálu a všech jeho částí. Tento projekt je spolufinancován ESF a státním rozpočtem.
Synchronizace. nejen provedení dvou operací ve stejný čas jakákoliv forma časové koordinace více procesů nebo událostí synchronizační pravidla / omezení.
Unix a Internet 9. Samba © Milan Keršlágerhttp:// Obsah: ●
UNIX 12. Komunikace mezi procesy © Milan Keršláger
Vypracoval / Roman Málek
Operační Systém Operační systém je v informatice základní programové vybavení počítače (tj. software), které je zavedeno do paměti počítače při jeho.
Operační systémy - úvod
Soubor Soubor v informatice označuje pojmenovanou sadu dat uloženou na nějakém datovém médiu, se kterou lze pracovat nástroji operačního systému jako.
Y36PJC Programování v jazyce C/C++
Financováno z ESF a státního rozpočtu ČR.
PB169 – Operační systémy a sítě
Operační systémy 9. Spolupráce mezi procesy
Název školy: Základní škola Městec Králové Autor: Mgr. Petr Novák
Správa paměti.
Dynamické proměnné (1) Proměnné, jejichž počet a (nebo) velikost pa-měti využívané těmito proměnnými se v prů-běhu programu mění Dynamické proměnné lze.
Paměť RAM.
Přednášky z distribuovaných systémů
Přednášky z Distribuovaných systémů
Definiční obory. Množiny řešení. Intervaly.
Algoritmizace a datové struktury (14ASD)
Monitor Object 1.
Scoped Locking, Strategized Locking
Transkript prezentace:

Paralelní programování Synchronizace – složitější vzory

Synchronizační vzory – fronta máme dva druhy vláken pokračovat smí jen v párech 2 varianty smí pokračovat v párech danou činnost může vyvíjet n vláken současně ale budou stejné počty stejných typů musí pokračovat v párech tj. danou činnost smí vyvíjet pouze dvě vlákna současně

Smí pokračovat v párech menQueue.signal() womenQueue.wait() marry() womenQueue.signal() menQueue.wait()

Musí pokračovat v párech – muž mutex.wait() if women > 0 women = women – 1 womenQueue.signal() else men = men + 1 mutex.signal() menQueue.wait() marry() marriageDone.wait()

Musí pokračovat v párech – žena mutex.wait() if men > 0 men = men – 1 menQueue.signal() else women = women + 1 mutex.signal() womenQueue.wait() marry() marriageDone.signal()

Synchronizační problémy typické úlohy pro řešení se používají synchronizační vzory rendez-vous, bariéra, turniket, fronta

Producent – konzument více producentů více konzumentů sdílená paměť – buffer konzument odebírá data z paměti k paměti může přistupovat pouze jeden čtení i zápis je exkluzivní data = obtainData() data = buffer.pop buffer.push(data) processData(data)

Producent data = obtainData() mutex.wait() buffer.push(data) items.signal() mutex.signal()

Konzument items.wait() mutex.wait() data = buffer.pop() mutex.signal() processData(data)

Producent 2 data = obtainData() mutex.wait() buffer.push(data) mutex.signal() items.signal() změna?

Konzument mutex.wait() items.wait() data = buffer.pop() mutex.signal() processData(data) problém?

Producent – konzument – konečný Reálně má buffer konečnou kapacitu v případě producent2 ani neznáme aktuální obsazení bufferu pokud je buffer plný, musí producenti čekat na uvolnění pokud je buffer prázdný, musí konzumenti čekat na naplnění

Producent data = obtainData() spaces.wait() mutex.wait() buffer.push(data) mutex.signal() items.signal()

Konzument items.wait() mutex.wait() data = buffer.pop() mutex.signal() spaces.signal() processData(data)

Zdroj obrázku: http://www. adamweitz