提升python向量加法的运行速度
在使用python进行深度学习模型训练或预测时,我们经常会使用到向量加法运算。 我们这里比较两个向量相加的两种方法。
一、逐一做标量加法
这里首先定义两个1000维的向量。
import torch
from time
import time
a
= torch
.ones
(1000)
b
= torch
.ones
(1000)
然后,这里将这两个向量按元素逐一做标量加法。
start
= time
()
c
= torch
.zeros
(1000)
for i
in range(1000):
c
[i
] = a
[i
] + b
[i
]
print(time
() - start
)
可以看到得到的输出时间是:
0.007939338684082031
二、矢量加法
第二种方法是,我们将这两个向量直接做矢量加法。
start
= time
()
d
= a
+ b
print(time
() - start
)
运行的时间结果是:
8.20159912109375e-05
通过对比可以看到,使用矢量加法能够大大减少GPU的运行时间,来提高计算效率。
代码参考自:动手学深度学习 pytorch版