Summary of Study |
Summary of Branches |
All Subject Groups |
All Subjects |
List of Roles |
Explanatory Notes
Instructions
Web page:
https://cw.fel.cvut.cz/wiki/courses/b4m35pap/start
Anotation:
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.
Course outlines:
1. | | Ú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. | | 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. | | Programování paralelních systémů II. - použití Message Passing Interface (MPI) a Open Multi-Processing |
(OpenMP) pro tvorbu paralelních programů.
4. | | 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. | | 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. | | 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. | | 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í.
8. | | Spelukace: 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. | | 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. | | Časový a prostorový paralelizmus v praxi: Ukázka vybraných partií na procesoru Intel Nehalem. |
11. | | Superpočítače dnešní doby: Masívně paralelní procesory (MPP) a clustery, Superpočítače na bázi GPU; |
Propojovací sítě - statické a dynamické.
12. | | 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.
13. | | Realizace moderního IO podsystému (NUMA architektury), HyperTransport, Quick Path Interconnect. |
14. | | Perspektivy a omezení dalšího rozvoje |
Exercises outline:
Literature:
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 |
Requirements:
Subject is included into these academic programs:
Page updated 9.2.2025 11:51:05, semester: L/2024-5, Z/2025-6, Z/2024-5, Send comments about the content to the Administrators of the Academic Programs |
Proposal and Realization: I. Halaška (K336), J. Novák (K336) |