Продукт Anaconda Accelerate dot в 2 раза медленнее, чем обычный NumPy
Почему Anaconda Accelerate вычисляет точечные продукты медленнее, чем обычный NumPy на Python 3? Я использую ускоренную версию 2.3.1 с установленным accelerate_cudalib 2.0, Python 3.5.2 Windows 10 64-bit.
import numpy as np
from accelerate.cuda.blas import dot as gpu_dot
import time
def numpydot():
start= time.time()
for i in range(100):
np.dot(np.arange(1000000, dtype=np.float64), np.arange(1000000, dtype=np.float64))
elapsedtime = time.time()-start
return elapsedtime
def acceleratedot():
start= time.time()
for i in range(100):
gpu_dot(np.arange(1000000, dtype=np.float64), np.arange(1000000, dtype=np.float64))
elapsedtime = time.time()-start
return elapsedtime
numpydot()
0.6446375846862793
acceleratedot()
1.33168363571167
1 ответ
Я понял, что общие массивы создаются с помощью отдельной библиотеки Numba. У них есть документация на их сайте.