Original title:
Překlad OpenCL aplikací pro vestavěné systémy
Translated title:
Compilation of OpenCL Applications for Embedded Systems
Authors:
Šnobl, Pavel ; Čekan, Ondřej (referee) ; Hruška, Tomáš (advisor) Document type: Master’s theses
Year:
2016
Language:
cze Publisher:
Vysoké učení technické v Brně. Fakulta informačních technologií Abstract:
[cze][eng]
Tato diplomová práce se zabývá podporou pro překlad a spouštění programů napsaných pomocí OpenCL frameworku na vestavěných systémech. OpenCL je systém pro programování heterogenních systémů, složených z procesorů, grafických akcelerátorů a dalších výpočetních zařízení. Využití má ovšem i na systémech skládajících se pouze z jedné výpočetní jednotky, kde umožňuje zápis paralelních programů (funkční a datový paralelismus) a práci s hierarchickým systémem pamětí. V rámci této práce jsou porovnány jednotlivé dostupné open source implementace OpenCL a následně je jedna vybraná integrována s překladačem LLVM. Tento překladač je generován v rámci sady nástrojů poskytovaných vývojovým prostředím pro tvorbu procesorů s aplikačně specifickou instrukční sadou zvaným Codasip Studio. Dále jsou navrženy a implementovány optimalizace pro architektury se SIMD instrukcemi a architektury typu VLIW. Výsledek je otestován a demonstrován na sadě testovacích aplikací.
This master's thesis deals with the support for compilation and execution of programs written using OpenCL framework on embedded systems. OpenCL is a system for programming heterogeneous systems comprising processors, graphic accelerators and other computing devices. But it also finds usage on systems composed of just one computing unit, where it allows to write parallel programs (task and data parallelism) and work with hierarchical system of memories. In this thesis, various available open source OpenCL implementations are compared and one selected is then integrated into LLVM compiler infrastructure. This compiler is generated as a part of toolchain provided by application specific instruction set architecture processor developement environment called Codasip Studio. Designed and implemented are also optimizations for architectures with SIMD instructions and VLIW architectures. The result is tested and demonstrated on a set of testing applications.
Keywords:
Codasip; LLVM; OpenCL; SIMD; VLIW; Codasip; LLVM; OpenCL; SIMD; VLIW
Institution: Brno University of Technology
(web)
Document availability information: Fulltext is available in the Brno University of Technology Digital Library. Original record: http://hdl.handle.net/11012/61853