PředmětyPředměty(verze: 964)
Předmět, akademický rok 2024/2025
   Přihlásit přes CAS
Optimalizace kódu produkčních překladačů - NSWI134
Anglický název: Code Optimization in Production Compilers
Zajišťuje: Katedra aplikované matematiky (32-KAM)
Fakulta: Matematicko-fyzikální fakulta
Platnost: od 2017
Semestr: letní
E-Kredity: 3
Rozsah, examinace: letní s.:2/0, Zk [HT]
Počet míst: neomezen
Minimální obsazenost: neomezen
4EU+: ne
Virtuální mobilita / počet míst pro virtuální mobilitu: ne
Stav předmětu: vyučován
Jazyk výuky: čeština, angličtina
Způsob výuky: prezenční
Garant: doc. Mgr. Jan Hubička, Ph.D.
Vyučující: doc. Mgr. Jan Hubička, Ph.D.
Třída: Informatika Mgr. - volitelný
Kategorizace předmětu: Informatika > Softwarové inženýrství
Anotace -
Open source překladače, middle-end, reprezentace programu a dataflow, SSA forma, alias analýza, globální optimalizace, interprocedurální optimalizace.
Poslední úprava: G_I (06.06.2008)
Cíl předmětu

Narozdíl od přednášky NSWI109 "Konstrukce překladačů" si přednáška neklade za cíl podat přehled o celém back-endu, ale soustředí se na zajímavé výsledky v oblasti optimalizace, které našly své uplatněni v praktických middle-endech.

Poslední úprava: G_I (06.06.2008)
Podmínky zakončení předmětu

Ústní zkouška.

Poslední úprava: Kynčl Jan, doc. Mgr., Ph.D. (31.05.2019)
Literatura -

Advanced Compiler Design and Implementation

Steven Muchnick

Morgan Kaufmann, 1997, ISBN 978-1558603202

Building an Optimizing Compiler

Robert Morgan

Digital Press, 1998, ISBN 978-1555581794

Poslední úprava: G_I (06.06.2008)
Požadavky ke zkoušce

Zkouška proběhne ústní formou, v rozsahu 2-3 otázek pokrytých látkou probranou na přednáškách.

Poslední úprava: Hubička Jan, doc. Mgr., Ph.D. (28.02.2018)
Sylabus -
  • Existující svobodné překladače (GCC, LLVM, Open64, atd.)
  • Reprezentace programu v mezikódu
  • Graf řízení toku
  • SSA forma
  • Základní optimalizace nad SSA formou (propagace konstant, global value numbering, atd.)
  • Alias analýza a optimalizace manipulace s pamětí
  • Detekce smyček a jejich optimalizace
  • Optimalizace pro paměťovou hierarchii
  • Interprocedurální optimalizace (organizace překladu, inlining, propagace konstant, atd.)
  • Optimalizace řízená profilem, dynamická optimalizace

Poslední úprava: G_I (06.06.2008)
 
Univerzita Karlova | Informační systém UK