如果我在以下链接中使用列表中的任何函数:
在 GPU 上运行内置函数 参数的类型是gpuArray而不是数组,结果的计算速度会更快吗?如果答案是肯定的,那么在某些情况下使用数组而不是gpuArray更方便?
据称这个问题是这个问题的重复:
为什么 MATLAB gpuarray 在添加两个矩阵时要慢得多?
显然不是这种情况,因为我是笼统地问的,而这是将 CPU 与 GPU 进行比较以获取特定代码。至多,该链接应该为这个问题提供答案。
根据官方文档:
测量和提高 GPU 性能 至少存在一种 CPU 比 GPU 性能更高的情况,因此一般的答案是 GPU 不一定计算得更快:
在同一台计算机上,此代码显示输出:
CPU 上的执行时间 = 0.019335
GPU 上的执行时间 = 0.027235
我发现这个文档来回答这个问题,并为诸如
- 提高性能的最佳做法
- 提高 CPU 和 GPU 性能之间的比较