问题标签 [nvcc]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
798 浏览

boost - 告诉 NVCC 不要预处理主机代码以避免 BOOST_COMPILER 重新定义

我有一个包含主机和设备代码的 .cu 文件:

如您所见,我包含了 boost 的互斥锁功能。当我编译文件时,由于以下警告而出现错误:

所以我假设 nvcc 处理设备代码和主机代码的所有预处理。我是对的,如果是的话,我怎样才能避免这种情况并将预处理传递给 cl.exe(MSVC 2010,Win7)?

我已经尝试将主机代码放在单独的 hpp/cpp 文件中,并将该文件包含在 cu 文件中 - 同样的问题。在主机代码中,我定义了一个将在设备代码中使用的表面参考。所以这就是我需要在 cu 文件和主机代码中包含设备代码分别知道的原因。

0 投票
1 回答
4646 浏览

eclipse - Nsight Eclipse 版找不到 nvcc

我刚刚安装了 CUDA 5.0 Preview (Mac OS X Lion),但在使用 Nsight 时遇到了问题。

该工具包似乎已正确安装。(驱动程序加载,nvcc -V 在 bash 中工作,示例工作正常)。

当我创建一个新项目时,我收到警告:

  • 启动外部扫描仪信息生成器时出错 (nvcc -dryrun ...)
  • 在 $PATH 中找不到程序“nvcc”

在 Preferences -> CUDA Toolkit 中,我没有检测到与 CUDA 兼容的设备。这很奇怪,因为我的机器上有 nVidia GT 650M。那么为什么 Nsight 不识别它呢?

如果我尝试构建一个项目,我会收到 2 个错误:

  • /bin/sh: nvcc: 找不到命令
  • 制作:* [src/test.o] 错误 127
0 投票
1 回答
2088 浏览

eclipse - 在 $PATH 中找不到程序“nvcc”

并且在启动外部扫描仪信息生成器时出现 4x 错误(nvcc -dryrun -G -g -O0 .....)

我为 ubuntu 12.04 安装了 cuda 工具包 5,还安装了 gtx580 的开发驱动程序

0 投票
1 回答
1778 浏览

c++ - CUDA 在运行时检查 nvcc "-arch"-flag

是否有可能根据例如nvcc -arch=sm_11nvcc -arch=sm_20已用于编译代码来调用不同的内核?更明确一点:

如您所见,我找到了CUjit_target_enumincuda.h但我无法确定 nvcc 是否定义了任何等于枚举值之一的标志。

我的意图是我不知道我的设备是否支持双精度浮点数。这意味着我必须将我的数据从 转换doublefloat并因此运行不同的内核(是的,我更愿意尽可能以双精度而不是单精度运行内核)。

只要能奏效,我也会欣赏一种完全不同的方法。

0 投票
5 回答
5275 浏览

optimization - 完全禁用 NVCC 上的优化

我正在尝试在我的 GPU 上测量峰值单精度触发器,因为我正在修改 PTX 文件以在寄存器上执行连续的 MAD 指令。不幸的是,编译器正在删除所有代码,因为它实际上没有任何用处,因为我没有执行任何数据加载/存储。是否有编译器标志或编译指示添加到代码中,以便编译器不会触及它?

谢谢。

0 投票
1 回答
758 浏览

c - 使用 CUDA 和 GCC 链接错误

我一直在尝试编译一组 C 和 CUDA 代码。问题出在我制作文件时的编译链接阶段。我制作了一个要在主机上执行的包装函数,以在设备上分配内存,将数据复制到它,并运行内核代码。此外,包装代码包含在与内核代码相同的文件中。包装器。以下是代码调用函数的方式:

这是我制作的头文件“LAMMPS.h”中的函数定义:

这是我正在使用的makefile:

最后,编译步骤工作正常,但是当我将它们全部链接在一起时(使用 tortGPU 的最后一步,我收到以下错误消息:

我尝试使用带有 -L 的 gcc 并得到完全相同的错误代码。谢谢!

0 投票
1 回答
1769 浏览

windows - 指定编译器 NVCC 用于编译主机代码

运行 nvcc 时,它始终使用 Visual C++ 编译器 ( cl.exe)。我怎样才能让它使用 GCC 编译器?

CC环境变量设置为gcc并没有解决它。我在可执行文件帮助输出中也找不到任何选项。

0 投票
1 回答
988 浏览

eclipse - “没有可用的源代码......”在 OSX 10.8.1 上使用 Nsight Eclipse Edition RC1

我正在尝试在 OS X Mountain Lion 10.8.1 上使用 CUDA 5 RC1。从 Nsight Eclipse Edition 调试时,出现错误:

main() 没有可用的源

我已经验证 nvcc 设置为使用 -g 和 -G 来发出设备和主机调试符号,并且 -O0 设置为禁用优化。

任何想法是什么问题或我可以执行的其他一些诊断?

0 投票
1 回答
2043 浏览

cuda - CUDA应用的计算能力会自动升级吗?

如果我编译具有较低计算能力的 CUDA 程序,例如 1.3(nvcc 标志 sm_13),并在具有 Compute Capability 2.1 的设备上运行它,它会利用 Compute 2.1 的功能吗?

在那种情况下,计算 2.1 设备的行为会像计算 1.3 设备一样吗?

0 投票
1 回答
5297 浏览

cuda - 我可以通过#define 在编译时获得 CUDA 计算能力(版本)吗?

如何通过#define 在编译时获得 CUDA 计算能力(版本)?例如,如果我使用 __ballot 并编译

我可以通过#define 在我的代码中获得计算能力的版本,以便选择带有 __ballot 和不带 __ballot 的代码分支吗?