OpenCL:浮点数或整数
OpenCL: float or integer?
尽管浮点类型主题中有几个问题,但我仍然有一些开放点需要澄清。我使用 OpenCL 1.1 (NVIDIA)。
我想比较数字并将它们用作数组的索引:哪个更快?1.) 使用整数进行比较和索引2.) 或者使用浮点数并在我将其用作数组索引时进行强制转换?
不幸的是,我不确定哪个更昂贵; 将浮点转换为整数或比较整数而不是浮点数。
使用无符号整数比使用有符号整数有什么优点吗?
编辑:我问这个的主要原因是我有一个 OpenCL 代码(我的意思是主机代码和内核代码),它没有我预期的那么快,我的第一个想法是因为我使用 uint 而不是 float。
我不会指望将(int) (FLOAT_MAX - 1)
与(int) (FLOAT_MAX - 2)
进行比较。结果可能会说,它们是平等的。
您的阵列有多大。也许较小的数据类型可以容纳,例如half
-floats,或byte
/short
而不是int
?
相关文章:
- 在C++中,将大的无符号浮点数四舍五入为整数的最佳方法是什么
- 使用英特尔内联函数将打包的 8 位整数乘以浮点数向量
- 将字符串转换为浮点数或整数,而无需使用内置函数(如 atoi 或 atof)
- 为什么将两个浮点数相加会得到一个整数C++?
- 浮点数中整数的精确表示形式
- 浮点到整数转换出错(即使浮点数已经是整数)
- 将整数的二进制数据转换为浮点数
- 当我们C++将两个数组的整数除以 时,如何获得浮点数计算;
- C++整数除法到浮点数
- 整数浮点数除以自身是否保证为 1.f?
- 如何使用 c++ 模板实现整数、字符串、浮点数和日期对象的数组
- 根据浮点数选择最小整数类型
- 如何将 Q 格式的整数转换为浮点数(反之亦然)
- 解析文本文件中的字符串、整数和浮点数
- 正则表达式浮点数和不带逗号的整数
- 如何在不使用对象的情况下连接字符串、整数和浮点数
- 将 32 位浮点数和不强制转换的 32 位整数与双精度进行比较,当其中一个值可能太大而无法完全适合另一种类型时
- 整数/浮点数/字符串值之间的操作,组合太多
- 为什么整数/浮点数乘法会导致不同的结果
- 如何使用zmq/zeromq从传递给python的字符串表示(字节数组)中获取整数/浮点数