3
A
回答
7
你不能在這個低水平的OpenCL指定親和力據我所知。但是,從OpenCL 1.2開始,通過使用clCreateSubDevices(可能在每個子設備中使用一個處理器,使用CL_DEVICE_PARTITION_BY_COUNTS, 1
)分區到子設備中,並在每個子設備上運行單獨的內核執行,可以控制關聯。
除了基於CPU的OpenCL實現之外,這很可能運行得很糟糕,我不得不質疑爲什麼要這樣做。如果要限制OpenCL-CPU實施的CPU使用率,則可以使用clCreateSubDevices
來分配部分計算資源。
描述來自英特爾的「設備分裂」的PDF是here,它有關於如何有效使用設備分區和clCreateSubDevices
的大量信息。
相關問題
- 1. 設置處理器親和性和TPL
- 2. Opencl Workitems和流處理器
- 3. 處理器親和力taskset的
- 4. 在Linux上的處理器親和力
- 5. 改變進程和線程處理器親和性
- 6. itk 3.20.1處理器親和力
- 7. 基準處理器親和力影響
- 8. 如何指定處理器親和力?
- 9. 無法設置處理器親和力
- 10. 決定處理器親和力
- 11. 在openMPI中的處理器/套接字親和力?
- 12. OpenCL視頻處理
- 13. 在Linux內核模塊中設置處理器親和力
- 14. Java VisualVM CPU使用率和處理器親和力
- 15. wait()和出口()與親子處理
- 16. OpenCL編譯器預處理定義?
- 17. 查詢線程(不是進程)處理器的親和力?
- 18. 設置線程處理器的親和力淨
- 19. 預處理器指令是否影響OpenCL內核性能?
- 20. OpenCL Comptuing單元和處理單元
- 21. 爲進程及其效果設置處理器親和力
- 22. 在多核x86處理器設置親和力
- 23. CoreCompile啓動CSC.exe設置處理器親和力MSBuild任務
- 24. 教程OpenCl事件處理
- 25. openCL中由CPU和GPU處理的數據之間的區別
- 26. 處理OpenCL內核中的臨時矩陣和私有內存
- 27. R語言中的親和性繁殖
- 28. Boost :: Thread API中的CPU親和性
- 29. 調度程序沒有考慮OpenCL子設備的親和力
- 30. 無處不在的OpenCL兼容性?
能夠在OpenCL中指定線程關聯並不像看起來那麼無用。在NUMA系統(例如Nehalem或AMD系統)上,從一個NUMA節點到另一個NUMA節點的線程遷移幾乎肯定會導致非本地內存訪問,這會損害性能。它應該由一個良好的CPU OpenCL運行時來處理核心關聯。 –