-dc hello_world.cu -o hello_world.o
$ nvcc -arch=sm_35 -rdc=true hello_world.o -o hello -lcudadevrt...本文备注/经验分享:
主要是说, 用户在使用动态并行的时候, 需要在头文件中包含哪些头文件(设备端Runtime的头文件), 以及, 连接的时候需要使用哪些库(设备端的库), 还有连接的时候所需要的特殊参数...因为CUDA C相当于C语言的扩展, 所以常见的C语言对一些库的用法, 这里也适合.也就是说, 你需要额外指定一些头文件, 再指定一些链接的库这两个步骤, 部分特别的库还需要特别的编译参数.但CUDA是一种易用为主的语言..., 在现在为主的开发包版本中(CUDA 9.2),该头文件和该库都会被自动被链接上去.也就是说, 本章节给出的头文件和库均不需要你记忆和指定了.全部现在都已经是自动的了.唯一需要注意的则是rdc选项(设备端代码重定位...这就是本章节的全部内容.常见的使用动态并行不能, VS用户都是忘记打开了这个选项, 打开即可.需要说明的是, 链接动态并行的库会可能带来额外的性能负担.