在GPU上允许增加最大可变尺寸(MATLAB)
在未能解决我的MEX代码中的内存泄漏问题之后,我尝试将代码编写成与MATLAB提供的示例类似(不幸的是,在MEX中只有一个使用CUDA的示例),但是出现错误 - 当我尝试这样做时,“设备上允许的最大变量大小已超出”:
mxGPUArray * tmp = mxGPUCreateGPUArray(4,
rSize,
mxDOUBLE_CLASS,
mxREAL,
MX_GPU_INITIALIZE_VALUES);
我rSize
打印了rSize
(它定义了rSize
的尺寸),并且我尝试了在Matlab中使用完全相同的大小分配一个gpuArray
(使用gpuArray.zeros(...)
),没有任何问题。
我已经尝试预先分配必要的空间,并修改其中一个rhs变量的值,但由于内存泄漏很小(但存在问题),我试图使代码尽可能类似于代码不会造成内存泄漏。
有谁知道如何解决这个问题? 有什么方法可以改变这个限制吗?
链接地址: http://www.djcxy.com/p/29279.html上一篇: Increasing maximum variable size allowed on GPU (MATLAB)
下一篇: Maximum variable size allowed by the program is exceeded