NVCC
文章平均质量分 77
AliceWanderAI
北邮自动化学院,研究方向:图像处理,机器学习
展开
-
解读CUDA Compiler Driver NVCC - Ch.5
前言前面几篇文章,我们了解了NVCC的作用,nvcc编译的two stage, 每个stage做了什么,怎么去选择虚拟架构和真实架构,JIT编译的原理,好处和弊端以及解决方案。本文我们将了解几个实际的nvcc编译命令。Base Notationnvcc提供了选项--gpu-architecture和--gpu-code。--gpu-architecture只能选择一个值,用来指定虚拟架构的名称,如下:--gpu-architeture=compute_50--gpu..原创 2022-01-20 23:21:01 · 1211 阅读 · 0 评论 -
解读CUDA Compiler Driver NVCC - Ch.4
前言第四章是详细的NVCC选项描述和用法,我们可以把它当作工具手册,在需要的时候去查看即可,感兴趣的话也可以花时间去了解。但现在,更重要地是理解,NVCC在编译CUDA程序的时候,具体做了什么,有什么作用,这些内容,我们将在完成本文阅读后得到答案。GPUGenerations为了让GPU 架构进化,NVIDIA GPU被发布为不同的generation。新的generation会引入功能性或者芯片架构上的重大改进,而同一个generation的GPU models只有轻微的...原创 2022-01-20 23:19:55 · 716 阅读 · 0 评论 -
解读CUDA Compiler Driver NVCC - Ch.3
前言上一篇文章简单了介绍了nvcc预定义的宏,以及支持的编译阶段,对应的输入文件后缀和输出文件的默认名。本篇文章了解CUDA源文件编译的整个workflow。OverviewCUDA编译的工作原理如下:输入程序经过设备编译编译预处理,编译为CUDA二进制(cubin)和/或PTX中间代码,被放置在一个fatbinary。输入程序再次预处理以供主机编译,嵌入到 fatbinary,并将 CUDA 特定 C++ 扩展转换为标准 C++ 构造。然后 C++ 主机编译器将把...原创 2022-01-20 23:19:00 · 529 阅读 · 0 评论 -
解读CUDA Compiler Driver NVCC - Ch.2 - Compilation Phases
前言上篇文章我们了解了nvcc是做什么的,本篇文章我们会了解Compilation Phases,编译阶段,nvcc预定义的宏,编译支持的文件格式等。NVCC Identificaiton Macronvcc预定义了以下的宏:__NVCC__:在编译C/C++/CUDA源文件时定义__CUDACC__:在编译CUDA源文件时定义__CUDACC_RDC__:在relocatable device code mode下编译CUDA源文件时定义__CUDACC_EWP__...原创 2022-01-20 23:18:20 · 600 阅读 · 0 评论 -
解读CUDA Compiler Driver NVCC - Ch.1 - Introduction
前言从这个系列开始,我会解读《CUDA Compiler Driver NVCC》的内容。通过这本书,可以更深刻地了解GPU 编译的底层相关的设计。CUDA Programming ModelCUDA Toolkit针对这样一类应用程序:它的控制部分由一个进程运行在一个通用计算设备(比如CPU)上,利用一个或多个GPU作为coprocessors来加速single program multiple data (SPMD)并行任务。这些任务可以由一系列GPU 线程来执行,而不用主机进程的干..原创 2022-01-20 23:17:25 · 845 阅读 · 0 评论