01 矩阵运算
一、对比速度
在这里测试一下, Pytorch中的tensor 部署在 CPU中和cuda中计算速度方面的差别。 这里生成一个 500×500 的随机矩阵。 通过 to 函数将其部署在普通内存中。 将其中的 CPU 修改 CUDA, 便可以将该矩阵放置在显存中了。 在函数中, 计算该矩阵与它的转置的乘积。 这种运算在人工神经网络中, 全连接部分的计算需要用到这种运算。 使用 timeit 来测量运行矩阵乘法的时间。 计算循环为 100000次。 下面对比矩阵在 普通内存和显存中计算所消耗的时间。
测试结果显示, 在CPU中的矩阵计算耗时大约为 30.4秒。 接下来, 将矩阵部署在 GPU中, 进行相同的计算。 时间大约为 3.67秒。 比起CPU中的计算速度提高了大约 9倍。
- 在CPU中的计算时间:
Computer Cost Time:30.433924299897626 seconds.
- 在GPU中的计算时间:
Computer Cost Time:3.6623519000131637 seconds.
※ 总 结 ※
本文测试了矩阵的乘法在CPU中和GPU中的速度区别。 部署在GPU中, 速度提高了大约 9倍左右。