首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何为原子设置CUDA浮点舍入模式?

如何为原子设置CUDA浮点舍入模式?
EN

Stack Overflow用户
提问于 2021-05-09 02:40:51
回答 1查看 71关注 0票数 2

here讨论了CUDA对浮点舍入模式的处理。虽然诸如__fadd_rn之类的各种内部函数可用于在程序的正常流程中执行舍入操作(这里添加了舍入到最近的值),但似乎没有指定诸如atomicAdd之类的原子的舍入模式,也没有讨论用于设置这种舍入模式的方法。

可以设置CUDA原子的舍入模式吗?

EN

回答 1

Stack Overflow用户

发布于 2021-05-09 09:01:57

你不能这么做。

引用PTX指令集documentation

浮点运算.add运算舍入到最接近的偶数。当前在全局内存上的atom.add.f32实现将不正常的输入和结果刷新为符号保持零;而共享内存上的atom.add.f32支持不正常的输入和结果,并且不将它们刷新为零。

atom.add.f16atom.add.f16x2操作需要.noftz限定符;它保留不正常的输入和结果,并且不会将它们刷新为零。

另一种想法是:当前CUDA硬件中可用的有限原子浮点支持是由内存控制器中的ALU完成的,而不是由SMs中的浮点硬件完成的。后者实现了所有的舍入模式,而前者没有。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/67450994

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档