cudaError_t cudaDeviceSetLimit(enum cudaLimit limit, size_t value)
設置limit是為了更新原本預設的限制請求,原本預設的限制很小,使用此API可以自由更改其value去符合硬體需求。
cudaLimit 有他各自的限制,詳情可參閱請網站
cudaLimitMallocHeapSize:改變GPU中global memory的預設heap大小。
cudaLimitStackSize:改變per thread stack resource。
另外值得注意的是cudaLimitStackSize,在CUDA論壇的一篇討論指出,通常需要增加stack的大小都是危險的,大部分的CPU programming問題都可以在預設的值處理,必須小心地檢查自己的方法是否有需要使用到更大的stack。
沒有留言:
張貼留言