我在 Nvidia 的 Nsight 中有一个小项目,它为我创建了 makefile。我想使用一些 SSE 指令,并想用 gcc 而不是 nvcc 编译项目中的 cpp 文件。
有没有办法配置 Nsight 来做到这一点,还是我必须手动编写 Makefile?
编辑: .cu 文件当然应该用 nvcc 编译。
要在 Nsight 中使用 gcc,您必须创建 makefile 项目并手动编写 makefile。
或者,你可以使用 nvcc 来编译你的 .cpp/.c 文件。要添加 nvcc 无法识别的额外编译器选项(仅由 gcc 识别),-Xcompiler
应在 nvcc 选项前面加上前缀。
使用 nvcc 的副作用之一是您的 .cpp 程序将需要 libcudart.so 才能运行,即使它并不真正需要它。
您应该能够在 CU 文件中使用 GCC SSE 指令 - NVCC 使用您的平台编译器编译所有主机代码。
如果您仍想使用 GCC,您有两种选择: