簡體   English   中英

調用CUDA內核時出現“無效的配置參數”錯誤

[英]“invalid configuration argument” error when calling CUDA kernel

我有GeForce 620M,我的代碼是:

int threadsPerBlock = 256;                  
int blocksPerGrid = Number_AA_GPU / threadsPerBlock; 
for(it=0;it<Number_repeatGPU;it++)
{
    Kernel_Update<<<blocksPerGrid,threadsPerBlock>>>(A, B, C, D, rand(), rand());     
}

我得到:

無效的配置參數。

可能是什么原因?

內核配置參數是<<<...>>>符號之間的參數。

GeForce 620M是具有計算能力的2.1設備。

當您為每個網格參數的塊傳遞一維參數時,計算能力2.1設備限於65535 (所傳遞的兩個參數中的第一個)。

由於您要傳遞的另一個參數(256, threadsPerBlock )肯定是入界的,因此我得出結論,您的第一個參數超出范圍:

int blocksPerGrid = Number_AA_GPU / threadsPerBlock; 

Number_AA_GPU大於65535 * 256(大於或等於65536 * 256會觸發失敗),或者為零(實際上Number_AA_GPU小於256將由於整數除法而失敗),或者為負數。

將來,如果您提供完整的示例,則可以編寫更容易理解的問題。 在這種情況下,告訴我們什么是Number_AA_GPU可以使我的答案更加明確。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM