这是我的cuda内核:https://pastebin.com/ti95Qy2p,我想在这个内核中调用
compute_linear_recurrence
方法。
但是当我使用代码时:
import cupy as cp
# code_str is code in https://pastebin.com/ti95Qy2p
calc_kernel = cp.RawKernel(code_str, 'compute_linear_recurrence', backend='nvcc')
计算结果时,它崩溃了
cupy_backends.cuda.api.driver.CUDADriverError: CUDA_ERROR_NOT_FOUND: named symbol not found
。
而且不仅compute_linear_recurrence
,这个cuda内核中的其他方法也无法调用。
那么到底发生了什么以及如何解决呢? 这个问题帮不了我。
compute_linear_recurrence
是在CPU上运行的主机函数。 RawKernel
或 RawModule
只能用于调用 CUDA 内核。