【发布时间】:2017-08-08 23:07:45
【问题描述】:
我试图弄清楚,与 CUDA 类型转换内在函数 __double2loint、__double2hiint 和 __hiloint2double 等效的 CPU 是什么。
我猜 _mm_cvttsd_si32 可能等同于 __double2loint(对吗?),但我没有找到 __double2hiint 和 __hiloint2double 的等价物。是否可以在 C 中实现此类函数的快速版本?
【问题讨论】:
-
您可以使用
union在标准C 中轻松编写这些函数。 -
_mm_cvttsd_si32不是重新解释,而是转换。您可以使用_mm_castsi128_ps等重新解释,但如前所述,您可以在 C 本身中进行。 -
如何开始以实现上述任何 CUDA 类型转换内在函数?
-
标准 C 中的代码比使用内部函数的代码快吗?
标签: c cuda sse intrinsics avx