SEDLÁČEK, F. Zpracování obrazu s velkými datovými toky - využití CUDA/OpenCL [online]. Brno: Vysoké učení technické v Brně. Fakulta elektrotechniky a komunikačních technologií. 2018.

Posudky

Posudek vedoucího

Honec, Peter

Zadání diplomové práce Bc. Filipa Sedláčka patřilo mezi středně obtížnější témata. Cílem bylo stávající algoritmus detekce vad v obrazu z řádkových kamer optimalizovat pro výpočet v GPU a to s využitím CUDA i OpenCL a umožnit tak nasazení systému s vysokorychlostními kamerami s velkými datovými toky. Student pracoval při řešení tématu iniciativně a samostatně, konzultace, na které přicházel vždy připraven svým blokem s pečlivě psanými poznámkami, probíhaly v konstruktivní rovině. Na ručně kreslené obrázky a schémata jsem se vždy těšil (např. obr. 7.2 a 7.3). Občas student chtěl obejít dodaný algoritmus s cílem pravděpodobně si zjednodušit implementaci do GPU, nicméně byl vždy nasměřován správnou cestou. Student si tuto práci zvolil, ač z dřívějška neměl žádné zkušenosti s akcelerací na GPU. O to více musel věnovat nastudování daného tématu, které není nijak jednoduché, zvláště pak s přihlédnutím k již danému algoritmu, který není možné modifikovat. Výsledek, ke kterému se při řešení tématu student dopracoval, považuji za zvláště povzbudivý pro budoucí reálné využití. Je předpoklad na základě této práce nasadit navržený algoritmus do výrobního závodu ve Znojmě v 7/2018 pro pilotní projekt 4 kamer s datovým tokem 6.4 GB/s. Práci lze považovat jako dílo diplomanta, po stránce praktické nemám co vytknout. Práci doporučuji k obhajobě. Navrhuji hodnocení diplomové práce stupněm A (90).

Navrhovaná známka
A
Body
90

Posudek oponenta

Klečka, Jan

Zadání hodnotím po stránce odborné i časové jako středně náročné. Textová část práce je od úvodu po závěr tvořena 80 stranami slovensky psaného textu a 10 stranami příloh. Z formálního hlediska mám tři drobné výhrady. Má první výhrada je k nerovnoměrnému členění textu do kapitol. Text rozdělen do devíti hlavních kapitol ale kapitoly 1,4,5,7,8,9 jsou velmi krátké, mají tři nebo méně stran, a dvě třetiny z celkového množství textu jsou v kapitolách 2,3,6. Další mou výhradou jsou chyby a nekonzistentnost při práci s do textu vkládanými objekty. V kap. 2 jsou bloky kódu označovány buď titulkem „Výpis“ nebo jsou uváděny bez titulku. V dalších kapitolách je pro bloky kódu bez zřejmého důvodu použit jiný grafický styl, jsou uváděny až na výjimku bez titulku a skoro každý blok má jinou velikost fontu. Čtyři tabulky jsou uvedeny titulkem „Tab.“ zatímco další dvě titulkem „Obr.“ (Obr. 7.5 a Obr 10.1) a navíc jsou číselné hodnoty ve všech tabulkách uváděny bez jednotek. Poslední výhradu mám k nadměrnému a chaotickému použití tučného fontu v běžném textu. Autor se zřejmě snažil zvýraznit důležité pojmy a pasáže ale v některých částech časté zvýrazňování částí textu působí rušivě hlavně proto, že některé výrazy jsou zvýrazněny bez zřejmého důvodu. Nicméně i přes tyto výhrady je text práce pochopitelný a čitelný a dobře dokumentuje práci diplomanta. Po gramatické stránce nejsem práci schopen kvalitu práce zhodnotit z důvodu mé neznalosti zákonitostí slovenské gramatiky. Z odborného hlediska hodnotím práci velmi kladně. Diplomant nastudoval problematiku využití GPU pro provádění obecných výpočtů s důrazem především na optimalizaci výpočetní náročnosti a efektivitu datových transferů a přístupů do paměti. V této problematice se dobře orientuje. Program je implementován v jazyce C++ a ze zdrojových kódů je zřejmá autorova znalost tohoto programovacího jazyka. Drobné výtky mám k použití globálních proměnných ve třídě „useOpenCL“ a k psaní velmi dlouhých nejasně pojmenovaných metod. Nicméně to jsou věci, které mají vliv hlavně na čitelnost kódu. Co bych však v kontextu tématu optimalizace výpočetní náročnosti chtěl zdůraznit jako možné významné opomenutí je skutečnost, že z přiložených projektů se zdá, že hlavní program i knihovny byly kompilovány pouze v režimu „debug“, který má tradičně vypnutou optimalizaci (viz. má první otázka), která má v některých případech dramatický dopad na výpočetní náročnost. I přes uvedené výtky je zadání dle mého názoru splněno v plném rozsahu a diplomová práce jednoznačně svědčí o dobrých inženýrských schopnostech autora. Práci doporučuji k obhajobě a navrhuji hodnocení B/80 bodů.

Navrhovaná známka
B
Body
80

Otázky

eVSKP id 111063