在這個帖子中x64 allows less threads per block than Win32?有一個關於註冊表不足的問題。我對Nvidia已經放棄了對CUDA 7.5及更高版本x86的支持。這可能是一個愚蠢的問題,但這是否意味着所有的指針都需要兩個寄存器?那可能更少的線程/塊將是事情繼續前進的方式嗎?x64 vs x86 for CUDA
0
A
回答
3
這可能是一個愚蠢的問題,但這是否意味着所有指針都需要兩個寄存器向前?
是。所有在x64模式下的指針都需要2個(32位)寄存器來存儲。
而且可能更少的線程/塊將是事情繼續前進的方式嗎?
當然,應該不會影響可啓動塊的數量。關於線程,是的,每塊可能會對線程產生影響(因爲每塊啓動的線程數乘以每個線程的寄存器數必須低於機器限制),但正如我在回答你所鏈接的問題時所說的那樣,通常可以使用上面提到的幾種方法之一來解決線程上的限制。許多內核不會受到影響,因爲它們沒有「超出限制」。對於那些「超出限制」的內核,有很好的技術可以緩解這種影響,並允許您爲每個塊運行所需數量的線程,最高可達1024.
最終,這意味着所呈現的問題不是性能之一,因爲它是性能優化之一,哪個問題將始終存在。
相關問題
- 1. 。x86 x86機器上的x64開發
- 2. x64性能與x86相比
- 3. 從x64 .NET訪問x86 COM1
- 4. x86或x64反彙編LIB
- 5. SWT x64與xulrunner 3.6.28 x86
- 6. x86/x64:修改TSS字段
- 7. OpenGL Shader vs CUDA
- 8. IMagick for PHP 5.4 x64
- 9. CUDA for .net?
- 10. CUDA 4.0 vs 3.2
- 11. 我可以在我的x64 WIN7上安裝x86/x64 windbg嗎?
- 12. 強制Excel(x86)VBA代碼連接到Win7 x64上的ODBC(x86)
- 13. EQU for non-immediates x86
- 14. Sql Server x64和x86鏈接服務器
- 15. x86和x64之間的項目組織
- 16. x86和x64有不同的.net CLR嗎?
- 17. Visual Studio 2008構建問題x64與x86
- 18. C++數組大小的x86和x64的
- 19. 的OpenCL:爲x86和x64版本
- 20. 使用WiX x86/x64修改machine.config
- 21. 加載x86或x64程序集
- 22. Windows開發:x86到x64轉換
- 23. 針對x86和x64的安裝程序?
- 24. 如何安裝VS幫助在x64平臺上使用WIX x86安裝程序?
- 25. Visual Studio 2015:x64 vs x86在模擬器中運行應用程序?
- 26. 「VS 10 x64」程序在x86操作系統上可以正常工作嗎?
- 27. Makefile for Gtk +和cuda
- 28. float vs int in cuda
- 29. 安裝Visual Studio 2017 x64與x86時有什麼區別?
- 30. 如何爲x86和x64同時配置VS2012解決方案
在64位平臺上,CUDA使用64位通用指針。在編譯器可以確定指針總是特定於已知小於4 GB的特定內存空間(尤其是共享內存)的情況下,並且可以通過使用32位,空間特定,指針而不是。無論這種優化是否在實踐中發生,我不確定;我隱約記得曾經見過這樣的例子。唯一可以確定的方法是檢查機器碼(SASS)。 – njuffa