我需要全局布爾變量在我的控制檯應用程序中,所以如何聲明它?CUDA中所有線程的全局變量
1
A
回答
6
爲了聲明將駐留在CUDA全局內存中的變量,您需要將__device__
關鍵字放在它的前面,例如,
__device__ bool myGlobalBoolVar;
或者,也可以在全局內存空間cudaMalloc
,例如分配內存
bool* myGlobalBoolVarPtr;
cudaMalloc(&myGlobalBoolVarPtr, sizeof(bool));
然後您可以將指針作爲參數傳遞給內核。請注意,指針參數本身將駐留在常量或共享內存空間中(取決於體系結構),但它將指向全局內存。
-3
當你呼喚你的__global__ kernel <<<i,j>>>()
功能,並給他一些變量,那麼所有這些變量將是全球(共享)爲您的所有線程獨立存在於同一塊或不變量。
相關問題
- 1. 全局變量和線程
- 2. Python全局變量線程
- 3. 使所有變量全局
- 4. 線程中的全局變量
- 5. PHP - 跨所有php線程訪問全局變量
- 6. 在線程中設置全局變量
- 7. 全局Ruby變量中的局部變量是否線程安全?
- 8. 的Python線程和全局變量
- 9. java線程全局變量的同步
- 10. 受線程影響的全局變量
- 11. 如何重置CUDA全局變量
- 12. PHP:所有頁面的全局變量
- 13. 並行線程和全局變量
- 14. 全局變量跨線程不更新
- 15. Kotlin局部變量線程安全
- 16. Python線程全局變量問題
- 17. Objective-C,全局變量和線程
- 18. 裝配 - 線程安全局部變量
- 19. 局部變量和線程安全
- 20. 從線程內訪問全局變量
- 21. C++多線程安全局部變量?
- 22. 打印所有全局變量/局部變量?
- 23. 在所有symfony2應用程序中的全局變量
- 24. 使所有變量全局,PHP
- 25. 如何獲得所有全局變量
- 26. 如何重置所有全局變量?
- 27. Javascript - 轉儲所有全局變量
- 28. C#全局變量爲所有形式
- 29. PHP所有函數變量全局
- 30. Java中的線程安全全局變量
這是錯誤的。根據架構,內核的參數變量位於共享或常量內存中。每個塊都有自己的數據副本。 – CygnusX1 2013-02-16 08:33:29
Ow。我看到「全球(共享)變量」。小心,在CUDA中,「共享內存」與「全局內存」不同,儘管是的,全局內存在所有線程和所有塊之間共享。 – CygnusX1 2013-02-16 08:38:52