Překladače

11. blok: Optimalizace



Tento blok obsahuje téma tzv. strojově nezávislých optimalizací, zejména se jedná o

1. graf toku řízení (Control-Flow Graph), vizte přednáška (níže) a skripta 9.1,

2. základní typy strojově nezávislých optimalizací, vizte skripta 9.2

3. lokální optimalizace v tzv. základních blocích (lineárních úsecích kódu), vizte přednáška (níže) a skripta  9.3 a

4. globální analýzu toku dat (Global Data-Flow Analysis), vizte přednáška (níže) a buď skkripta 9.4  či raději text  "analyza_toku_dat" (str. 1-9 a 22-24), který je v učebních materiálech nebo dostupný zde:


Před shlédnutím 1. části přednášky si orientačně pročtěte úvodní motivační část ze skript str. 171 - 173.

Záznam přednášky

!. část: Úvod a graf toku řízení (GTŘ) najdete zde:

Chyba: Odkazovaný objekt neexistuje nebo nemáte právo jej číst.
https://is.muni.cz/el/fi/podzim2021/PA008/um/prednasky_2020_video_zaznamy/PA008_Optimalizace_1_GTR.mp4

Část 2. Základní typy strojově nezávislých optimalizací, která je jen výčtová, si přečtěte ve skriptech, sekce 9.2, str. 176 -187.

Část 3. Lokální optimalizace v tzv. základních blocích (lineárních úsecích kódu): shlédněte přednášku zde:

Chyba: Odkazovaný objekt neexistuje nebo nemáte právo jej číst.
https://is.muni.cz/el/fi/podzim2021/PA008/um/prednasky_2020_video_zaznamy/PA008_Optimalizace_2_local_ZB.m4v

případně vizte též vizte skripta  9.3 (str.(187 - 197)

a drobná poznámka (není ve skriptech) o záměně pořadí příkazů v ZB zde:

Chyba: Odkazovaný objekt neexistuje nebo nemáte právo jej číst.
https://is.muni.cz/el/fi/podzim2021/PA008/um/prednasky_2020_video_zaznamy/PA008_Optimalizace_2_local_ZB_reordering.mp4

4. globální analýza toku dat. Bud muzete shlednout prednasku  zde:

Chyba: Odkazovaný objekt neexistuje nebo nemáte právo jej číst.
https://is.muni.cz/el/fi/podzim2021/PA008/um/prednasky_2020_video_zaznamy/PA008_Optimalizace_3_globalni_ATD.mp4

vedenou podle textu "analyza_toku_dat.pdf"  (vizte ref. na tento text/soubor  na zacatku tohoto bloku) - doporuceno, nebo tez muzete konzultovat odpovidajici partie ze skript.