我必須學會OpenMP
來源gcc
。我已閱讀OpenMP
(3.0和4.0)的文檔。據我所知,OpenMP使用work-sharing
機制。據我所知work-sharing
機制在線程間傳輸任務,而線程正在運行。或者在執行這些線程之前線程之間的數據分配正在執行?工作共享機制(在OpenMP中)是否在線程正在執行時在線程之間傳輸任務?
-2
A
回答
1
如果您使用OpenMP和任務,則任務將存儲在一個或多個任務隊列中。如果一個線程發現自己處於空閒狀態,它將窺探鄰居隊列中的任務。這是libgomp
的內部。
如果您使用OpenMP 與平行使用靜態計劃,則不會發生任務監聽。
如果您使用OpenMP 與並行使用動態計劃,則團隊中的線程將動態分配工作,因此空閒線程將從團隊的其餘部分獲取任務。
通常,當線程需要在運行時進行通信時,週期將從處理中消耗。
+0
非常感謝! –
相關問題
- 1. 在線程池中的任務之間但不是在Java線程之間共享對象
- 2. 線程池是否在應用程序域之間共享?
- 3. 在線程組之間共享cookie
- 4. 在Java線程之間共享數據
- 5. 在線程之間共享對象
- 6. 在兩個線程之間共享QAxObject?
- 7. 在線程之間共享類屬性
- 8. 在線程之間共享XPObject對象
- 9. C++ - 在線程之間共享數據
- 10. 如何在GUI線程和工作線程之間共享數據?
- 11. 線程是否在Web模塊之間共享?
- 12. 在線程之間共享數組是否安全?
- 13. 暫停線程,而另一個線程正在執行任務
- 14. 在線程之間共享不帶鎖的線程值C
- 15. 線程任務不在IIS中執行
- 16. 在python/django中共享線程之間的事務範圍? (PostgreSQL)
- 17. 確定工作線程是否正在做任何工作
- 18. 在kdb中在主線程和從線程之間共享數據
- 19. HttpContext.Current.Session是否在工作進程之間共享?
- 20. OpenMP - 在塊上執行線程
- 21. 共享對象並從主線程中控制線程執行
- 22. 另一個線程正在運行時執行任務
- 23. 如何在線程之間傳輸鎖?
- 24. 在UI線程上執行長任務
- 25. 在另一個線程執行任務
- 26. 如何在多線程之間共享一個事務
- 27. 如何在OpenMP中的單線程塊中聲明共享工作區域?
- 28. 在threadpoolexcecutor正在執行的任務的線程池很少線程
- 29. System.Event是否在主線程中執行?
- 30. 在wxwidgets中,我如何鎖定在gui線程和工作線程之間共享的向量?
學習[自己實施工作分享可以教你很多](http://stackoverflow.com/a/30591616/2542702)。 –