gpt4 book ai didi

floating-point - 如何为原子设置CUDA浮点舍入模式?

转载 作者:行者123 更新时间:2023-12-04 07:41:16 29 4
gpt4 key购买 nike

讨论了 CUDA 对浮点舍入模式的处理 here .而各种内在函数,例如 __fadd_rn可用于在程序的正常流程中执行舍入操作(此处添加舍入到最近),原子的舍入模式,例如 atomicAdd 似乎没有指定,也没有讨论设置此舍入模式的方法。
是否可以设置CUDA原子的舍入模式?

最佳答案

你不能。
引自 PTX 指令集 documentation :

The floating-point operation .add operation rounds to nearest even.Current implementation of atom.add.f32 on global memory flushessubnormal inputs and results to sign-preserving zero; whereasatom.add.f32 on shared memory supports subnormal inputs and resultsand doesn't flush them to zero.

atom.add.f16 and atom.add.f16x2 operation requires the .noftzqualifier; it preserves subnormal inputs and results, and does notflush them to zero.


另一种思考方式:当前 CUDA 硬件中可用的有限原子 float 支持是由内存 Controller 中的 ALU 完成的,而不是由 SM 中的浮点硬件完成的。后者实现了所有的舍入模式,前者没有。

关于floating-point - 如何为原子设置CUDA浮点舍入模式?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/67450994/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com