MEX コードでメモリ リークの問題を解決できなかった後、MATLAB が提供する例にできるだけ似たコードを記述しようとしました (残念ながら、MEX で CUDA を使用する例は 1 つしかありません) が、エラーが発生しました。 -これを実行しようとすると、「デバイスで許可されている最大変数サイズを超えています」:
mxGPUArray * tmp = mxGPUCreateGPUArray(4,
rSize,
mxDOUBLE_CLASS,
mxREAL,
MX_GPU_INITIALIZE_VALUES);
rSize
(gpuArrayの次元を定義する)を事前に印刷gpuArray
し、Matlabで(を使用して)まったく同じサイズのを割り当ててみましたが、gpuArray.zeros(...)
問題はありませんでした。
必要なスペースを事前に割り当て、rhs 変数の 1 つの値を変更することは既に試みましたが、小さな (しかし問題のある) メモリ リークがあるため、コードをできるだけ似たコードにしようとしています。メモリリークを引き起こしません。
この問題を解決する方法を知っている人はいますか?この制限を変更する方法はありますか?