我有一个CUDA C/C++程序为CUDA 7.5。众所周知: libNVVM库是一个优化的编译器库,它从NVVM生成PTX。
我可以通过使用:nvcc -ptx <file>.cu -o <file>.ptx获得PTX
但是如何从<file>.cu获得NVVM (LLVM IR)?
如何为目标架构编译NVVM IR (LLVM IR)或优化IR?
我是否需要这个第三方库或程序,如: libcuda.lang,.?


NVVM编译器(基于LLVM)从NVVM IR生成PTX代码。 NVVM IR和NVVM编译器对所使用的源语言大多不知道。由于DCI (驱动程序/编译器接口)的不同,NVVM编译器的PTX码原部分需要知道源语言。 从技术上讲,NVVM IR是具有一套规则、限制和约定的LLVM IR,加上一组受支持的内在功能。NVVM IR中指定的程序始终是合法的LLVM程序。合法的LLVM程序可能不是合法的NVVM程序。
发布于 2016-01-01 22:58:24
简单的回答是,你不能这样做。NVIDIA的解析器是专有的、封闭的源,而且它们没有公开IR代码生成器,而这种方式可以在您询问时使用。
尽管如此,您并不是第一个对此感到好奇的人,您可能会发现一些有用的、但完全非官方的、不受支持的信息这里。
https://stackoverflow.com/questions/34176073
复制相似问题