izpis_h1_title_alt

Prevajanje modela OpenACC na nivoju izvorne kode
ID Vitek, Gregor (Avtor), ID Slivnik, Boštjan (Mentor) Več o mentorju... Povezava se odpre v novem oknu

.pdfPDF - Predstavitvena datoteka, prenos (2,30 MB)
MD5: 381BEAE917CC0900C992BED3BA178D59

Izvleček
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.

Jezik:Slovenski jezik
Ključne besede:Prevajalnik, GPE, OpenACC, OpenCL
Vrsta gradiva:Magistrsko delo/naloga
Organizacija:FRI - Fakulteta za računalništvo in informatiko
Leto izida:2018
PID:20.500.12556/RUL-103938 Povezava se odpre v novem oknu
Datum objave v RUL:28.09.2018
Število ogledov:1202
Število prenosov:356
Metapodatki:XML DC-XML DC-RDF
:
Kopiraj citat
Objavi na:Bookmark and Share

Sekundarni jezik

Jezik:Angleški jezik
Naslov:Source-to-source Compilation of OpenACC
Izvleček:
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.

Ključne besede:Compiler, GPU, OpenACC, OpenCL

Podobna dela

Podobna dela v RUL:
Podobna dela v drugih slovenskih zbirkah:

Nazaj