CUdeviceptr deviceInputA = new CUdeviceptr();
cuMemAlloc(deviceInputA, size * Sizeof.DOUBLE);
cuMemcpyHtoD(deviceInputA, Pointer.to(inputfingerprint), size * Sizeof.DOUBLE);
cuMemFree(deviceInputA);
在这里 cuMemFree 没有释放 GPU 内存 .
终于,这个问题解决了。我有一个 2D 输出数组,并且没有在 GPU 上解除分配数组的内部指针。因此 GPU 内存未释放 .解除分配后,它正在释放GPU内存。
cuMemFree在JCuda中工作绝对正常。