[PATCH] D42922: [CUDA] Register relocatable GPU binaries

Jonas Hahnfeld via Phabricator via cfe-commits cfe-commits at lists.llvm.org
Fri Feb 16 10:18:47 PST 2018


Hahnfeld added inline comments.


================
Comment at: lib/CodeGen/CGCUDANV.cpp:330-331
   // the GPU side.
   for (const std::string &GpuBinaryFileName :
        CGM.getCodeGenOpts().CudaGpuBinaryFileNames) {
     llvm::ErrorOr<std::unique_ptr<llvm::MemoryBuffer>> GpuBinaryOrErr =
----------------
tra wrote:
> Hahnfeld wrote:
> > Can we actually have multiple GPU binaries here? If yes, how do I get there?
> Yes. `clang --cuda-gpu-arch=sm_35 --cuda-gpu-arch=sm_50...` will compile for sm_35 and sm_50 and then will pass the names of GPU-side objects to the host compilation via `-fcuda-include-gpubinary`.
I'm not sure if that's true anymore: I think they are now combined by `fatbinary`. This seems to be confirmed by `test/Driver/cuda-options.cu`. If that was the only use case, we may try to get rid of this possibility, let me check this.


https://reviews.llvm.org/D42922





More information about the cfe-commits mailing list