関数 cuMemGetInfo() のおかげで、GPU デバイスの空きメモリと合計メモリを知りたいです。
// ----- Before any variable initialization -----
size_t free;
size_t total;
CUresult result=cuMemGetInfo(&free,&total);
私は結果を得ています:
Free memory : 4095 MB
Total memory : 4095 MB
64 ビットの Windows 7 で 6 GB のメモリを搭載した Tesla C2070 を使用しています。ただし、アプリケーションは 32 ビットで実行されています。私のコードは私に次のようなものを与えるはずです:
Free memory : 5376 MB
Total memory : 5376 MB // values given by the deviceQuery.exe example of CUDA
I 4095*1024*1024 = 4293918720 は約 2^32 (丸め後) です。実際、size_t は unsigned int (4 バイト) へのポインターです。
だからここに私の質問があります。たとえば、unsigned long を指すように size_t の定義を変更することは可能ですか?
ありがとう