What is the SYCL code compilation flow on RISC-V CPU? #17070
Replies: 1 comment
-
Hi @TJU-PanYizhe,
Steps that you describe here are correct. Note that SYCL toolchain is quite generic, so this flow is the same for every device.
Correct
Note that an OpenCL program object is still created in this flow and it is managed by the corresponding OpenCL implementation. There could still be some post-processing involved even for AOT binaries - that depends on implementation details of a low-level backend that you use (i.e. specific OpenCL implementation)
At SYCL level, those compilers are technically the same
JIT is default flow. Selection between AOT and JIT happens through Our AOT compiler for CPUs is a handwritten OpenCL app which does a regular JIT compilation and grabs it results, you can find it sources here: https://github.com/intel/llvm/tree/sycl/opencl/opencl-aot Even though we have only been testing it for x86 targets here at intel/llvm, it should be generic enough to work for any OpenCL implementation. According to our Users Manual, you need to specify |
Beta Was this translation helpful? Give feedback.
-
I had llvm(this project) and oneapi-construction-kit installed on my RISC-V CPU hardware.
clinfo
andsycl-ls
output as below:For example:
main.cpp
# compile and execute command clang++ -fsycl main.cpp -o main ./main
Output is as below:
What is the exactly SYCL code compilation flow and execution process on RISC-V CPU?
During execution:
Please correct me if I was wrong. Thanks a lot!
Beta Was this translation helpful? Give feedback.
All reactions