2014-03-19 29 views
0

任何人都可以請建議我一個方法來釋放在CUDA一個動盪的全球內存變量...CUDA無揮發物的

volatile unsigned *d_queue_L12; 
err = cudaMalloc((void **)&d_queue_L12, CORES*MAX_12*Cache_Sets_L2*sizeof(volatile unsigned)); 
if (err != cudaSuccess) 
{ 
    fprintf(stderr, "Failed to allocate space to L12 QUEUE vector (error code %s)!\n",  cudaGetErrorString(err)); 
    exit(EXIT_FAILURE); 
} 

err = cudaFree(d_queue_L12); 
if (err != cudaSuccess) 
{ 
    fprintf(stderr, "Failed to free L2 FLAG COUNT vector (error code %s)!\n", cudaGetErrorString(err)); 
    exit(EXIT_FAILURE); 
} 

給出了一個錯誤: 錯誤:類型的參數「揮發性無符號整型*」不兼容,類型爲「無效*」

+0

什麼主機編譯器,這是,什麼是您希望通過在這方面使用的揮發性來實現呢? – talonmies

回答

1

的參數怎麼是這樣的:

err = cudaFree((void *)d_queue_L12); 
+0

它的工作原理。感謝名單... –