GPUメモリが開放されない
显示 更早的评论
GeForce RTX1660 Parallel computing toolbox バージョン 7.4を使用しています
実行したい処理に対してGPUメモリが少ないためメモリをクリアしながらやりくりしたいのですが、意図した通りにGPUメモリが開放されません
具体的に困っている状況を再現したのが下記のコード、写真はコードを実行したときのタスクマネージャの画面です
画像上下の違いは変数のサイズです
画像上の場合、最後のgpuAray型変数であるp4を解放したときに一気にメモリが開放され、p0~p3を削除してもメモリが空きません
一方下の場合、3GBあたりまでは開放されるのですが、p3のclearが反映されておらず、こちらもp4で一気にp3の分も開放されます
この3GBはワークスペースに存在しないのですがどこにあるのでしょうか。また,この3GBを全てのgpuAray型の変数をクリアすることなく,プログラムの実行中に削除することはできますか。
これがGPUの問題なのか、MATLABのキャッシュ等の仕様なのかということがまだ判別できておりませんが、MATLAB側で解決できるのではないかと思い質問させていただきました。よろしくお願いいたします。
X = 1200; Y = 200; Z = 200; % 写真 上
% X = 1800; Y = 300; Z = 200; % 写真 下
p0=gpuArray.rand(X,Y,Z);
pause(3)
p1=gpuArray.rand(X,Y,Z);
pause(3)
p2=gpuArray.rand(X,Y,Z);
pause(3)
p3=gpuArray.rand(X,Y,Z);
pause(3)
p4=gpuArray.rand(X,Y,Z);
pause(3)
clear p0
pause(3)
clear p1
pause(3)
clear p2
pause(3)
clear p3
pause(3)
pause(3)
clear p4

采纳的回答
更多回答(0 个)
类别
在 帮助中心 和 File Exchange 中查找有关 Parallel and Cloud 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!