Charles Explorer logo
🇨🇿

Vývoj vysoce výkonného software

Předmět na Matematicko-fyzikální fakulta |
NPRG054

Sylabus

- Vztah mezi výkonem software a moderními programovacími jazyky a metodologiemi

- Architektury současných procesorů a jejich vliv na výkon

- Schopnosti a limity optimalizace překladačem

- Měření a ladění výkonu, profilery

- Vektorové instrukce a jejich použití v C++

- Paměťová hierarchie a její typické vlastnosti u dnešních výpočetních systémů

- Cache-aware a cache-oblivious algoritmy

- Výkonově významné úlohy lineární algebry a zpracování dat

Tato přednáška se nezabývá paralelním programováním - viz NPRG042 Programování v paralelním prostředí.

Anotace

Kurz programování se zaměřením na výpočetní výkon.

Vlastnosti moderních procesorů a paměťové hierarchie.

Schopnosti a limity optimalizace překladačem, automatická a manuální vektorizace.

Efektivní implementace základních algoritmů lineární algebry a zpracování dat.

Pro absolvování předmětu je nezbytná znalost v rozsahu předmětu NPRG041 - Programování v C++!