Podrobno

Primerjava univerzalnih knjižnic za grafične pospeševalnike
ID OREL, MATEJ (Avtor), ID Lotrič, Uroš (Mentor) Več o mentorju... Povezava se odpre v novem oknu

.pdfPDF - Predstavitvena datoteka, prenos (681,92 KB)
MD5: 75C957AA65576078B34DCF81CB5BDA94

Izvleček
V diplomski nalogi predstavimo in primerjamo tri knjižnice za programiranje heterogenih sistemov: Kokkos, SYCL z implementacijo AdaptiveCpp in CUDA. Glavni izziv pri razvoju visoko zmogljivih aplikacij je zagotavljanje prenosljivosti kode med različnimi arhitekturami grafičnih pospeševalnikov, pri čemer skušamo dosegati najvišjo zmogljivost. Pri tem se moramo programerji odločiti, ali nam večjo prednost predstavlja enostavnejša izvedba v univerzalnih ogrodjih in s tem prenosljivost programa, ali najvišja zmogljivost v namenskem ogrodju za eno arhitekturo. Implementirali in testirali smo algoritma množenja matrik in bitoničnega urejanja na grafičnih karticah Nvidia RTX 3070 in AMD Radeon VII. Rezultati kažejo, da sta si ogrodji Kokkos in SYCL konkurenčni v času izvajanja in podobni pri programiranju, medtem ko je ogrodje CUDA nizkonivojska rešitev in za grafične pospeševalnike Nvidia ostaja najbolj optimizirana. Opazili smo, da večjo razliko v smislu časa izvajanja prinese pravilna izbira arhitekture grafičnega pospeševalnika za določen algoritem, kot pa izbira ene izmed primerjanih univerzalnih knjižnic.

Jezik:Slovenski jezik
Ključne besede:grafični pospeševalnik, Kokkos, SYCL, AdaptiveCpp, CUDA, množenje matrik, bitonično urejanje, heterogeni sistemi, vzporedno izvajanje
Vrsta gradiva:Diplomsko delo/naloga
Tipologija:2.11 - Diplomsko delo
Organizacija:FRI - Fakulteta za računalništvo in informatiko
Leto izida:2025
PID:20.500.12556/RUL-167527 Povezava se odpre v novem oknu
COBISS.SI-ID:228252419 Povezava se odpre v novem oknu
Datum objave v RUL:26.02.2025
Število ogledov:92
Število prenosov:12
Metapodatki:XML DC-XML DC-RDF
:
Kopiraj citat
Objavi na:Bookmark and Share

Sekundarni jezik

Jezik:Angleški jezik
Naslov:Comparison of universal libraries for graphics accelerators
Izvleček:
In this thesis, we present and compare three libraries for programming heterogeneous systems: Kokkos, SYCL with the AdaptiveCpp implementation, and CUDA. The main challenge in developing high-performance applications lies in ensuring code portability across different GPU architectures, while also striving for maximum performance. Consequently, developers must choose whether to prioritize simpler development in universal frameworks, thereby enhancing program portability, or opt for the highest performance in a specialized framework for a single architecture. We implemented and tested matrix multiplication and bitonic sorting algorithms on the Nvidia RTX 3070 and AMD Radeon VII graphics cards. The results show that Kokkos and SYCL are competitive in terms of execution time and similar in programming style, whereas CUDA is a low-level solution that remains the most optimized for the Nvidia hardware. We observed that selecting the right GPU architecture for a given algorithm generally has a greater impact on execution time than the choice between the universal libraries under comparison.

Ključne besede:GPU, Kokkos, SYCL, AdaptiveCpp, CUDA, matrix multiplication, bitonic sort, heterogeneous systems, parallel execution

Podobna dela

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

Nazaj