목차
접기
백터화 연산 속도 측정!
import numpy as np
x = np.arange(1, 10001)
y = np.arange(10001,20001)
z = np.zeros_like(x)
for i in range(10000):
z[i] = x[1]+y[i]
print(z)
z=x+y
print(z)
# ==================================
# 속도 측정
def runTime1():
import timeit
start = timeit.default_timer()
for i in range(10000):
z[i] = x[1] + y[i]
end = timeit.default_timer()
print('sum vector:', (end-start))
def runTime2():
import timeit
start = timeit.default_timer()
z = x + y
end = timeit.default_timer()
print('vectorize:', (end-start))
runTime1()
runTime2()
[코드 실행 결과]
[10003 10004 10005 ... 20000 20001 20002]
[10002 10004 10006 ... 29996 29998 30000]
sum vector: 0.005121769999999998
vectorize: 3.2527000000004413e-05
그래서.. 백터화연산이 더 빠르다!
728x90