izpis_h1_title_alt

Prevajanje modela OpenACC na nivoju izvorne kode
ID Vitek, Gregor (Author), ID Slivnik, Boštjan (Mentor) More about this mentor... This link opens in a new window

.pdfPDF - Presentation file, Download (2,30 MB)
MD5: 381BEAE917CC0900C992BED3BA178D59

Abstract
Razvili smo prevajalnik, ki omogoča dodajanje direktiv OpenACC v programski jezik Java. Implementirali smo ga s pomočjo prevajanja na nivoju izvorne kode. Prevajalnik deluje kot predprocesor, ki javansko kodo z oznakami OpenACC prevaja v javansko kodo, ki uporablja vmesnik OpenCL za računanje na grafičnih procesnih enotah. Izhodna koda prevajalnika je prevedljiva s katerimkoli javanskim prevajalnikom in lahko teče na vseh računalnikih z Javinim navideznim strojem in podporo za OpenCL. Zaradi obsega standarda OpenACC smo se pri implementaciji osredotočili le na osnovno paralelizacijo zank in prenos podatkov med napravami. S prevajalnikom smo dosegli pospešitve izvajanja kompleksnih problemov za okoli 50\% in dosegli enak čas izvajanja kot z jezikom C++, ki uporablja OpenCL.

Language:Slovenian
Keywords:Prevajalnik, GPE, OpenACC, OpenCL
Work type:Master's thesis/paper
Organization:FRI - Faculty of Computer and Information Science
Year:2018
PID:20.500.12556/RUL-103938 This link opens in a new window
Publication date in RUL:28.09.2018
Views:1203
Downloads:356
Metadata:XML DC-XML DC-RDF
:
Copy citation
Share:Bookmark and Share

Secondary language

Language:English
Title:Source-to-source Compilation of OpenACC
Abstract:
The OpenACC framework was created to alleviate the problems with programming graphical processing unit. We implemented a compiler, which added OpenACC support to the Java programming language. We used source-to-source translation to compile Java code annotated with OpenACC directives into Java code which uses OpenCL to execute computations on the GPU. The code compiled with our compiler is compatible with any Java compiler and runs on any machine that supports the Java virtual machine and OpenCL. Due to the size of the OpenACC standard, we focused mostly on the core features of the framework, such as loop parallelization and data transfer. The code generated with our compiler achieved around a 50\% speed-up, and achieved parity with native C++ programs using OpenCL.

Keywords:Compiler, GPU, OpenACC, OpenCL

Similar documents

Similar works from RUL:
Similar works from other Slovenian collections:

Back