Vývoj vysoce výkonného software - NPRG054
Anglický název: High Performance Software Development
Zajišťuje: Katedra softwarového inženýrství (32-KSI)
Fakulta: Matematicko-fyzikální fakulta
Platnost: od 2019
Semestr: letní
E-Kredity: 6
Rozsah, examinace: letní s.:2/2 Z+Zk [hodiny/týden]
Počet míst: neomezen
Minimální obsazenost: neomezen
Virtuální mobilita / počet míst: ne
Stav předmětu: vyučován
Jazyk výuky: čeština, angličtina
Způsob výuky: prezenční
Další informace: https://www.ksi.mff.cuni.cz/teaching/nprg054-web/
Poznámka: povolen pro zápis po webu
Garant: RNDr. David Bednárek, Ph.D.
Třída: Informatika Mgr. - Softwarové systémy
Kategorizace předmětu: Informatika > Programování
Výsledky anket   Termíny zkoušek   Rozvrh LS   Nástěnka   
Anotace -
Poslední úprava: T_KSI (28.04.2016)
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++!
Podmínky zakončení předmětu -
Poslední úprava: RNDr. David Bednárek, Ph.D. (07.06.2019)

Podmínkou pro zakončení předmětu je získání stanoveného počtu bodů z domácích úkolů, které mají podobu malých softwarových projektů v C++, a absolvování ústní zkoušky, přičemž ústní zkoušku lze nahradit získáním vyššího poču bodů z domácích úkolů. Bodové hranice platné pro daný rok jsou zveřejňovány na začátku semestru.

Sylabus -
Poslední úprava: RNDr. David Bednárek, Ph.D. (22.04.2016)
  • 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í.