是否有这样一个例子:
on CPU, Instruction A is faster than Instruction B
However,
on GPU, Instruction B is faster than Instruction A
(Instructions are assumed to be math operations)
这可能是由于GPU的一些因素,如:
- GPU并行执行与数据相关的指令,这可能比顺序执行更糟糕
- 缓存丢失率高,银行冲突
当然,很长一段时间以来,gpu不支持32b整数运算(特别是乘法)是很常见的。有很多CPU/GPU组合,在CPU上32b整数乘法比32b浮点乘法快,在GPU上反之亦然。