如何验证双打是否已启用并在 cuda 内工作?

发布于 2024-11-28 08:33:20 字数 243 浏览 0 评论 0原文

我想知道我的 CUDA 设备是否启用了双精度,因为它是具有 CUDA 运行时 4.0(SDK 和工具包、最新驱动程序)的计算能力 2.0 设备。

如何验证双精度是否已激活?另外,我在编译 CUDA 代码时收到警告: 当 2.0 设备明显支持双精度时,“不支持双精度,降级为浮动”。那为什么会有这个警告呢?任何人都可以帮忙了解这里发生了什么吗? 出现此警告是否是因为默认 Makefile 会针对所有可能的体系结构进行编译,并且此输出来自较低体系结构的编译?

I was looking to find out if double precision is enabled on my CUDA device or not since it is a Compute Capability 2.0 device with CUDA runtime 4.0(SDK & toolkit, latest driver).

How can I verify if double precision is activated or not? Also, I am getting warnings while compiling my CUDA code:
"double precision not supported, demoting to float" when clearly 2.0 devices support double precision natively. Why is this warning there then? Can anyone help as to what is going on here?
Is this warning coming because the default Makefile compiles for all possible architectures and this output is coming from compilation for lower architectures?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

梦太阳 2024-12-05 08:33:20

出现警告的原因是 nvcc 默认为不支持双精度的计算能力 1.0 设备生成代码。如果将 -arch=sm_20 添加到编译语句中,nvcc 将为计算 2.0 设备生成代码,其中包括本机双精度浮点运算。

The warning occurs because nvcc defaults to generating code for compute capability 1.0 devices which do not support double precision. If you add -arch=sm_20 to your compile statements, nvcc will generate code for compute 2.0 devices, which includes native double precision floating point operations.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文