我知道如何在运行时类型中激活GPU,但是我习惯于使用sklearn或XGBoost进行机器学习,后者会自动使用GPU。现在,我已经制定了自己的机器学习算法,但是我不知道如何强制它在GPU上进行计算。我需要GPU运行时类型的额外RAM,但是我不知道如何从GPU的速度中受益...
@jit(target ="cuda")
popsize = 1000
File "<ipython-input-82-7cb543a75250>", line 2
popsize = 1000
^
SyntaxError: invalid syntax
答案 0 :(得分:1)
您可以see here Numba和Jit是将脚本放在GPU上的方法,如下所示:
from numba import jit, cuda
import numpy as np
# to measure exec time
from timeit import default_timer as timer
# normal function to run on cpu
def func(a):
for i in range(10000000):
a[i]+= 1
# function optimized to run on gpu
@jit(target ="cuda")
def func2(a):
for i in range(10000000):
a[i]+= 1
if __name__=="__main__":
n = 10000000
a = np.ones(n, dtype = np.float64)
b = np.ones(n, dtype = np.float32)
start = timer()
func(a)
print("without GPU:", timer()-start)
start = timer()
func2(a)
print("with GPU:", timer()-start)
还有一个reference link您可以使用