In [1]:
import numpy as np
import time

In [2]:
a = np.random.rand(1000000)
b = np.random.rand(1000000)

# Vec
tic = time.time()
c = np.dot(a,b)
toc = time.time()
print("Vectorized version: ", c ," / Calculated in ", str(1000*(toc-tic)), "ms")

# Non-vec
c = 0
tic = time.time()
for i in range(1000000):
    c += a[i] * b[i]
toc = time.time()
print("Non-vectorized version: ", c ," / Calculated in ", str(1000*(toc-tic)), "ms")


Vectorized version:  249878.772392  / Calculated in  3.3850669860839844 ms
Non-vectorized version:  249878.772392  / Calculated in  1026.733160018921 ms