NVIDIA CUDA 4.1 编译器基于 LLVM 构建,CUDA开发环境包括


CUDA™ 工具包是一种针对支持CUDA功能的GPU(图形处理器)的C语言开发环境。CUDA开发环境包括:

nvcc C语言编译器适用于GPU(图形处理器)的CUDA FFT和BLAS库分析器适用于GPU(图形处理器)的gdb调试器(在2008年3月推出alpha版)CUDA运行时(CUDA runtime)驱动程序(目前在标准的NVIDIA GPU驱动中也提供)CUDA编程手册

在 NVIDIA ,CUDA 从 4.1 版本开始将使用 LLVM 进行构建,使用 LLVM 用于优化和 PTX 代码生成和调试信息生成等,详情请看 learn more here.

LLVM 定义了一个虚拟机的语言。然后再这个语言的基础上,实现了很多的功能,例如大多数的优化都是基于这个虚拟机的语言来进行的。(这是和gcc很大的 不同,我想也是delphij提到的更好的优化的原因.) 你可以这么理解,LLVM就是建立了很多个积木块,写编译器就是搭积木。 

相关内容