Detail práce

Akcelerace grafických algoritmů pomocí koprocesoru NEON

Bakalářská práce Student: Kratochvíl Radim Akademický rok: 2014/2015 Vedoucí: Viktorin Jan, Ing.
Název anglicky
Acceleration of Graphics Algorithms by NEON Coprocessor
Jazyk práce
český
Abstrakt

Cílem této práce je prozkoumat možnosti koprocesoru NEON. Porovnávají se grafické algoritmy napsané v jazyce C, jazyce symbolických adres, jazyce C s využitím intrinsických funkcí a automaticky vektorizovaný kód. Hlavním zjištěním je, že jde zkrátit délku výpočtu až 60 krát a díky tomu by bylo možné tyto algoritmy provádět v reálném čase na HD videu.

Klíčová slova

ARM, NEON, GCC, Automatická vektorizace.

Ústav
Studijní program
Informační technologie
Soubory
Stav
obhájeno, hodnocení C
Obhajoba
15. června 2015
Oponent
Průběh obhajoby

Student nejprve prezentoval výsledky, kterých dosáhl v rámci své práce. Komise se poté seznámila s hodnocením vedoucího a posudkem oponenta práce. Student následně odpověděl na otázky oponenta a na další otázky přítomných. Komise se na základě posudku oponenta, hodnocení vedoucího, přednesené prezentace a odpovědí studenta na položené otázky rozhodla práci hodnotit stupněm C.

Otázky u obhajoby
  1. Zkoušel jste upravovovat i větší obrázky, které se již nevejdou do cache? Na jaké velikosti obrázku jste vlastně testoval?
  2. Proč jste použil v C kódu 32b int, zatímco v asm kódu 8/16b?
  3. Jak daleko si myslíte, že jste od teoreticky maximálního výkonu koprocesoru NEON (efektivita implementace)?
  4. Uvažoval jste i o pokročilých knihovnách pro vektorizaci (OpenMP, vector classes, atd.)?
  5. Zkoumal jste nějaké další výkonnostní metriky, mimo času vykonání (FLOPS/FLIPS, cache miss, unit stall)?
  6. V textu se vyskytuje tvrzení: "kód napsaný v jazyce symbolických adres vykazuje stabilní urychlení výpočtu díky označení kódu jako volatile" (strana 30). Jak tomu mám rozumět? Jaký vliv má označení volatile na rychlost kódu?
  7. V textu tvrdíte, že intrinsic implementace byla pomalejší, z důvodu členění kódu do funkcí. Dále tvrdíte, že funkce byly inlinovány. Jak je tedy možné, že má členění do funkcí vlastnost vliv na rychlost?
Komise
Sekanina Lukáš, prof. Ing., Ph.D. (UPSY FIT VUT), předseda
Grézl František, Ing., Ph.D. (UPGM FIT VUT), člen
Hrubý Martin, Ing., Ph.D. (UITS FIT VUT), člen
Jaroš Jiří, doc. Ing., Ph.D. (UPSY FIT VUT), člen
Švéda Miroslav, prof. Ing., CSc. (UIFS FIT VUT), člen
Citace
KRATOCHVÍL, Radim. Akcelerace grafických algoritmů pomocí koprocesoru NEON. Brno, 2015. Bakalářská práce. Vysoké učení technické v Brně, Fakulta informačních technologií. 2015-06-15. Vedoucí práce Viktorin Jan. Dostupné z: https://www.fit.vut.cz/study/thesis/17014/
BibTeX
@bachelorsthesis{FITBT17014,
    author = "Radim Kratochv\'{i}l",
    type = "Bakal\'{a}\v{r}sk\'{a} pr\'{a}ce",
    title = "Akcelerace grafick\'{y}ch algoritm\r{u} pomoc\'{i} koprocesoru NEON",
    school = "Vysok\'{e} u\v{c}en\'{i} technick\'{e} v Brn\v{e}, Fakulta informa\v{c}n\'{i}ch technologi\'{i}",
    year = 2015,
    location = "Brno, CZ",
    language = "czech",
    url = "https://www.fit.vut.cz/study/thesis/17014/"
}
Nahoru