CUDA编程实战书中的乘方和解决办法: 对一个数组执行某种计算,然后产生一个更小的结果数组. 由一个线程在共享内存上进行迭代并计算出总和值.而如果用并行,所花时间就与数组长度的对数成正比. 代码的思想是,每个线程将cache[]中的两个值加和,然后结果保存回cache[].由于每个线程都将两个值合并为一个值,那么在完成这个步骤后,得到的结果数量就是计算开始时数值数量的一半.在下一个步骤中,我们对这一半数值执行相同的操作.在将这种操作执行log2(threadsPerBlock)个步骤后,就能得到…