16
A
回答
18
由於TBB版本2.2的任務調度器會被自動初始化和運行時的照顧要使用的線程數量,如果想手動更改號碼,就可以使用以下方法之一:
當您創建調度程序,你可以指定線程數爲
tbb::task_scheduler_init init(nthread);
;否則可以使用
tbb::task_scheduler_init init(tbb::task_scheduler_init::automatic);
在這種情況下, tbb調度程序創建與CPU核心一樣多的線程
0
Documetation表示「僅依賴於硬件配置」。可能它只是可用的CPU內核數量。
9
讓TBB決定池中的線程數是推薦的選項 - 它通常會創建與計算機上的邏輯CPU一樣多的工作線程 - 請參閱Class reference for tbb::task_scheduler_init。
這並不容易找出許多工作線程是如何存在的或在任何給定時間執行任務 - 這是一個經過深思熟慮的設計選擇。從Intel's TBB Parallel Programming Course:
如何知道有多少個線程可用?
不要問!
- 甚至沒有調度知道有多少線程真的是 提供
- 有可能是機器
- 例程可以被嵌套在其他並行程序內運行的其他進程
相關問題
- 1. 英特爾TBB和Cilk Plus線程親和力英特爾MIC
- 2. 使用英特爾的tbb與qt
- 3. 在Linux中使用英特爾線程構建模塊(TBB)
- 4. 英特爾TBB許可證
- 5. 英特爾TBB:圖形池
- 6. 英特爾TBB在並行線程中運行一個函數?
- 7. 與靜態鏈接英特爾TBB
- 8. 英特爾tbb內存開銷
- 9. 英特爾tbb編譯和測試
- 10. Win CE上的英特爾®TBB開發移動應用程序?
- 11. 英特爾tbb parallel_for:傳遞類參數的成員函數?
- 12. 英特爾TBB使用task_group做一個Bitonic排序
- 13. 手動管理和更新英特爾®TBB流程圖?
- 14. 哪裏可以獲得英特爾的gb在Windows上的Tbb
- 15. Atomic int錯誤地遞增?英特爾TBB實施
- 16. C++英特爾TBB內部環路優化
- 17. 英特爾TBB庫是否具有選擇核心數量的功能?
- 18. TBB parallel_for線程數較少
- 19. 谷歌本地客戶端(NaCl,PNaCl)中的英特爾線程構建模塊(TBB)
- 20. 使用英特爾MKL的3D卷積
- 21. 與英特爾伽利略gen2的英特爾xdk守護進程
- 22. 英特爾TBB計算圖:如何指定節點的輸入隊列容量
- 23. 爲什麼英特爾TBB沒有提供像boost這樣的條件變量?
- 24. 我使用英特爾螺紋積木
- 25. 錯誤遞增使用英特爾XDK
- 26. 使用英特爾Fortran與vim製作
- 27. 使用英特爾®酷睿™i7
- 28. 創建使用英特爾組件
- 29. 英特爾®線程構建模塊併發隊列:使用pop()方法在pop_if_present()
- 30. 英特爾線程構建模塊性能不佳
你必須在此之後保持'tbb :: task_scheduler_init'對象的存活,否則它將恢復爲自動。 – 2015-04-04 13:09:47
此外,任務調度程序對象僅影響從當前線程啓動的TBB作業。從另一個線程創建更多作業時,需要另一個'tbb :: task_scheduler_init'。 – 2015-05-24 18:29:23