3 ms·
This is an Open Source CUDA compiler (not clear from the title). I guess at the moment, this targets Nvidia GPUs. I wonder how much effort it would be to targe
by albertzeyer 11y ago
This is an Open Source CUDA compiler (not clear from the title).
I guess at the moment, this targets Nvidia GPUs. I wonder how much effort it would be to target other vendors GPUs. Does someone has some insights on that? This could mean that we can finally use CUDA for all GPUs.
- rincebrain 11y agoIt solves a fundamentally different problem, AFAIK - it emits CUDA kernels which are then just handed to the driver's interface for copying and running CUDA kernels on the GPU, so if your GPU doesn't support it, they'd need to change the LLVM backend to emit something other than a CUDA kernel (OpenCL, I suppose?).
- fulafel 11y agoIt compiles CUDA (a C++ like language) using LLVM down to host ISA (x86) and virtual low-level NV virtual assembly (SASS/PTX). Only translation from virtual assembly to model-specific GPU assembly is left to closed-source NV code. For AMD porting you could possibly use http://llvm.org/docs/AMDGPUUsage.html http://llvm.org/docs/AMDGPUUsage.html
- elbows 11y agoAccording to the video, they have an a runtime library (StreamExecutor) which abstracts over CUDA and OpenCL. That seems like the hard part to me. Switching out the LLVM backend for kernels ought to be relatively easy.