Přehled studia |
Přehled oborů |
Všechny skupiny předmětů |
Všechny předměty |
Seznam rolí |
Vysvětlivky
Návod
Webová stránka:
https://edux.feld.cvut.cz/courses/A4M36PAP/
Anotace:
Předmět rozšiřuje znalosti studentů v oblasti architektury moderních počítačů. Pozornost věnujeme zejména problematice paralelismu, implementaci koncepce paralelismu v hardwaru, vytváření paralelního programu, architektuře soudobých počítačů využívajících paralelismu na úrovni instrukcí a vláken, pokročilému proudovému zpracování instrukce, paměťovému a perifernímu subsystému a jejich návrhu.
Výsledek studentské ankety předmětu je zde:
AD4M36PAP
Výsledek studentské ankety předmětu je zde:
A4M36PAP
Cíle studia:
The course increases the knowledge in the field of modern computer architecture.
Osnovy přednášek:
Úvod do moderní architektury počítačů; počítače řízené tokem instrukcí (control driven) a tokem údajů (data driven a demand driven). Klasifikace počítačových architektur podle Flynna; Vícejádrové, víceprocesorové a vícepočítačové systémy, pojem paralelního zpracování. Amdahlův a Gustafsonův zákon. Výkonové metriky.
| 2. | | Přednáška - Paralelismus a programování paralelních systémů I Paralelismus na úrovni instrukcí, vláken, programů a dat. Časový a prostorový paralelismus. Bernsteinovy podmínky paralelismu, datová a řídicí závislost. Úvod do programování paralelních systémů. Rozvrhování programů (statické, dynamické) a meziprocesová/meziprocesorová komunikace a synchronizace. Výpočtová granularita a zrnové balení. Mapování procesů a dat. |
| 3. | | Přednáška - Programování paralelních systémů II |
Způsoby programování paralelních systémů - použití Message Passing Interface (MPI) a Open Multi-Processing (OpenMP) pro tvorbu paralelních programů.
| 4. | | Přednáška - Programování paralelních systémů III |
Využití grafických karet pro paralelní programy - GPU (Graphics processing unit) a GPGPU (General-purpose computing on GPU).
| 5. | | Přednáška - Skalární procesor |
Cesta instrukce a dat z vedlejší paměti až k procesoru z pohledu hierarchie pamětí, operačního systému a procesoru.
| 6. | | Přednáška - Predikce, prediktory a předvýběr instrukcí |
Statické a dynamické predikce; Smithův prediktor, dvou-úrovňové prediktory s lokální a globální historií , dvou-módový prediktor, loop-counting prediktory a další.
| 7. | | Přednáška - Od skalárního procesoru k superskalárnímu (pokročilé techniky instrukčního toku) |
Superskalární procesory se statickým, dynamickým a hybridním plánováním vykonávaní instrukcí.
Spekulativní provádění instrukcí a podpora přesného přerušení. Procesory VLIW a EPIC. Využití datového paralelismu, SIMD a vektorové instrukce v ISA.
| 9. | | Přednáška - Multiprocesorové systémy a problém koherence |
Architektury multiprocesorových počítačů. Systémy s distribuovanou a sdílenou pamětí (DMS, SMS). Architektury symetrických multiprocesorových počítačů (SMP). Způsoby zajištění koherence v SMP. Pravidla pro provádění paměťových operací, zajištění sekvenční konzistence, slabší modely paměťové konzistence, directories.
| 10. | | Přednáška - Časový a prostorový paralelizmus v praxi |
Ukázka vybraných partií na procesoru Intel Nehalem.
| 11. | | Přednáška - Superpočítače dnešní doby |
Masívně paralelní procesory (MPP) a clustery, Superpočítače na báze GPU; Propojovací sítě - statické a dynamické.
Architektura I/O podsystému. Aktuální sběrnice. Způsoby propojení procesoru, paměti a periférií uvnitř systémů na čipu (SoC). Vyrovnávací paměti v I/O podsystému, způsoby implementace sdíleného přístupu.
Realizace moderního IO podsystému (NUMA architektury), HyperTransport, Quick path interconnect
Perspektivy a omezení dalšího rozvoje, rezerva
Osnovy cvičení:
| I. | | část - Verilog a popis hardwaru počítače |
| 1. | | Úvod do jazyka Verilog - zopakovaní, seznámení s prostředím Xilinx ISE, popis kombinačního obvodu a jeho simulace; |
| 2. | | Základní stavební bloky počítače (multiplexor, demultiplexor, dekodér, komparátor, sčítačka, registr, paměť,...), synchronní konečný automat; popis ve Verilog-u; |
| 3. | | Návrh jednoduché řídicí jednotky procesoru. |
| 4. | | Návrh paralelní dvojkové 64-bitové sčítačky se zrychlenými přenosy a předvídáním (Carry Look-Ahead). Zadání prvního seminárního projektu - Návrh jednoduchého výpočtového systému - ALU, RJ, paměť; simulace základního instrukčního cyklu (odevzdání v 8. týdnu). |
| II. | | část - Programovaní paralelných systémů |
| 5. | | Praktické seznámení s OpenMP, jednoduché paralelní programy pro SMS. |
| 6. | | Praktické seznámení s MPI, jednoduché paralelní programy pro DMS. |
| 7. | | Procvičování technik vytváření paralelních programů kombinací OpenMP a MPI pro vícepočítačové systémy s vícevláknovým vykonáváním v každém uzlu. Zadání druhého seminárního projektu - tvorba paralelního programu pro vybraný problém (odevzdání v 9. týdnu). |
| III. | | část - Samostatná práce a prezentace výsledků seminárních projektů |
| 8. | | Kontrola prvního seminárního projektu. Zadání třetího seminárního projektu - rešerše na téma paralelismus v současných počítačích (odevzdání v 12. a 13. týdnu formou prezentace). |
| 9. | | Samostatná práce; Průběžná kontrola třetího seminárního projektu. |
| 10. | | Kontrola druhého seminárního projektu - krátká prezentace zvoleného postupu řešení a vytvořeného programu; Průběžná kontrola třetího seminárního projektu. |
| 11. | | Samostatná práce. |
| 12. | | Prezentace a odevzdání třetího seminárního projektu. |
| 13. | | Dokončení prezentací a odevzdávaní třetího seminárního projektu. |
Literatura:
| [1] | | Hennesy, J. L., Patterson, D. A.: Computer Architecture : A Quantitative Approach, Third Edition, San Francisco, Morgan Kaufmann Publishers, Inc., 2002 |
| [2] | | Shen, J.P., Lipasti, M.H.: Modern Processor Design : Fundamentals of Superscalar Processors, First Edition, New York, McGraw-Hill Inc., 2004 |
| [3] | | Grama A., Gupta, A. et al.: Introduction to Parallel Computing, Second Edition, Addison Wesley, 2003 |
Požadavky:
Stránky předmětu:
https://edux.feld.cvut.cz/courses/A4M36PAP/
Poznámka:
| Rozsah výuky v kombinované formě studia: 14p+6c, |
Předmět je zahrnut do těchto studijních plánů:
| Plán |
Obor |
Role |
Dop. semestr |
| Stránka vytvořena 23.1.2026 05:51:19, semestry: Z,L/2027-8, Z,L/2026-7, Z,L/2025-6, připomínky k informační náplni zasílejte správci studijních plánů |
Návrh a realizace: I. Halaška (K336), J. Novák (K336) |