![]() |
1
2
总之,没有。 CUDA中的不同浮点舍入模式被实现为不同的指令,而不是像在其他一些硬件上那样实现不同的FPU操作模式。舍入模式在编译时通过使用所需的内部或PTX指令,或通过指示编译器应用翻译单元范围默认舍入行为来静态选择。一旦编译器和汇编器完成,代码将使用的浮点模式将被烘焙到GPU将运行的代码中,并且无法更改。 假设地,我认为有可能使用运行时触发的JIT传递让驱动程序将代码转换为不同的舍入模式。但如今,该设施并不存在。 |
![]() |
2
2
正如@talonmies所提到的,简短的回答是否定的。但是,CUDA提供了较低级别的算术指令来控制舍入模式。这些指令被称为内部指令,与常规指令不同,它们不太精确,也没有被编译器优化。此外,您需要重写代码以使用这些指令。以下是一个示例:
如您所见,
所有这些信息以及您可以在中找到的更多信息 CUDA's Math API 文档。 |
|
Rik Bloemers · for循环不接受任何浮点变量 2 年前 |
![]() |
zell · 为什么存储7个浮点数需要34字节? 2 年前 |
![]() |
Atharva Sunil Sathe · 如何删除任意数的小数点? 2 年前 |
![]() |
user1658887 · 为什么**2!=a*a一些彩车? 6 年前 |