<分区>
我有 2 个 cpp 文件 setup 和 functions,6 个 .cu 文件 main,flood,timestep、discharge、continuity 和copy。 我正在尝试将其编译为主要调用 cpp 文件,因此泛洪内核 global 然后泛洪调用时间步长、放电、连续性和复制内核所有设备。
是这样的:
主要
~函数
~设置
~洪水
~~时间步
~~放电
~~连续性
~~复制
我正在使用带有 CUDA 5.5 的 GK110 板,但我不知道如何在单独的源中编译(我得到一个错误,该设备功能需要分离编译模式)。 我也不知道如何使用 -dc 或 -rtc={true} 和标志来实现动态并行。
我试过这样做,但不起作用:
g++ -c functions.cpp -std=c++0x
g++ -c setup.cpp -std=c++0x
nvcc -arch=sm_35 -dc timestep.cu copy.cu continuity.cu discharge.cu
nvcc -arch=sm_35 -dlink timestep.o copy.o continuity.o discharge.o -o link.o -lcudadevrt
nvcc -dc flood.cu -arch sm_35
当我到达第五行时,我收到无法配置设备函数调用的错误消息。
有人可以帮助我吗?