我是cupy新手,正在尝试学习它。
以下代码使用 cuda11 时出现错误
import numpy
import cupy
def monte_carlo_gpu(n:int, m:int)-> float:
accum = 0
for i in range(m):
x = cupy.random.random(n, dtype=numpy.float32)
y = cupy.random.random(n, dtype=numpy.float32)
r = cupy.less(x**2 + y**2, 1.0)
accum += cupy.sum(r)/n
return 4.0*accum/m
运行时错误:运行时编译失败
我该如何解决这个问题?
我在等待 pi 值(蒙特卡罗 GPU)
我做了两种都有效的方法:
J = cp.array(J, dtype=cp.complex128)