编译器警告:不支持Double。降级为漂浮

时间:2012-02-07 21:10:58

标签: cuda

我收到以下消息:

  

不支持Double。降级为漂浮

我向编译器添加了以下命令:-arch=sm_20但我仍然收到该消息 我正在使用sdk 4和Nvida G105M。

这条消息是什么意思?

2 个答案:

答案 0 :(得分:6)

G105M仅具有计算能力1.1,因此缺乏任何双精度浮点功能。如果你真的需要双精度,你需要一个至少具有计算能力1.3的设备,即使这样,它通常也不是一个好主意,因为它往往是除了一些较新的高端GPU以外的所有主要性能杀手。 / p>

答案 1 :(得分:6)

从您的评论中您使用“sdk 4”我推断您​​正在尝试编译SDK示例。 SDK makefile已经包含了nvcc的各种-arch或-gencode命令行设置,因此即使添加-arch = sm_20,命令行上可能还有其他选项会导致编译器生成pre-sm_13代码,这可能是警告的原因。