1. 若 kernel 執行後直接馬上結束、記憶體存取錯誤或跑出來的值不對,可能是 kernel 有寫錯,也可能是 global memory 使用太多而爆掉。而 global memory 使用太多時,編譯器不一定會挑出錯誤。

 

2. kernel 中宣告太多變數,使用的 register 量可能過多,造成每次跑的 thread 個數較少(資源不夠的關係)。

 

3. 如果有 if ... else ... 或其他分支,造成每個 thread 的執行時間長短不一,必須同步?

文章標籤

vandwa 發表在 痞客邦 留言(0) 人氣()