ODR kommer att vara otillgängligt pga systemunderhåll onsdag 25 februari, 13:00 -15:00 (ca). Var vänlig och logga ut i god tid. // ODR will be unavailable due to system maintenance, Wednesday February 25, 13:00 - 15:00. Please log out in due time.
 

Performance Evaluation of SYCL on RISC-V Vector Architectures

Publicerad

Typ

Examensarbete för masterexamen
Master's Thesis

Modellbyggare

Tidskriftstitel

ISSN

Volymtitel

Utgivare

Sammanfattning

This paper explores the vectorization capabilities of different SYCL compilers, targeting processors with RISC-V Vector Extension, RVV. The primary aim is to evaluate the readiness of various SYCL backends of the AdaptiveCpp SYCL compiler, namely the OpenMP JIT, OpenMP AOT and OpenCL backends. We detail how each approach compiles to RISC-V assembly code, examining how vector instructions emerge or fail to do so across different these different compilation methods. A major part of the work involves discussing how SYCL backends can be configured or adapted to target RVV through toolchains such as LLVM, while also pointing out limitations in support. To support our investigations, QEMU, a general purpose emulator, was used to compile and run RISC-V binaries, and RAVE, a QEMU extension, was used to log instructions executed. These tools were essential in validating whether vector instructions are generated, but also to validate that they are executed. The results show that support for RVV across the ecosystem remains fragmented. Portable Computing Language does not support RVV, nor does it aim to. OneAPI construction kit shows signs of RVV support as vector instructions appear in assembly, however RAVE traces confirm that actual execution does not occur. LLVM offers solid RVV support, but using it with AdaptiveCpp requires modifications to enable full vectorization. In conclusion, although support for RISC-V vectorization is progressing, the broader SYCL ecosystem and its heterogeneous compilation pathways remain underdeveloped, requiring significant manual effort and tooling adaptation to achieve practical performance portability.

Beskrivning

Ämne/nyckelord

SYCL, RISC-V, Vector Processing, SIMD, AdaptiveCpp, QEMU, OpenMP, OpenCL, LLVM, Super Computing

Citation

Arkitekt (konstruktör)

Geografisk plats

Byggnad (typ)

Byggår

Modelltyp

Skala

Teknik / material

Index

item.page.endorsement

item.page.review

item.page.supplemented

item.page.referenced