我的問題可能是微不足道的。我使用MPI庫對一個CFD代碼進行了並行處理,現在我正試圖調查我的並行效率。首先,我創建了一個案例,它將提供行列中相同的負載和對傳輸數據的計算量的恆定比率。因此,我的期望是,當我增加等級時,任何運行時變化都將僅歸因於通信延遲。然而,我意識到不調用等級通信的子程序(因此它們只執行域計算,因此它們處理所有等級的相同負載)顯着貢獻 - 實際上是最大運行時增加。我在這裏錯過了什麼?這甚至有意義嗎?並行效率下降不一致
1
A
回答
0
這是否有意義?
是!
您創建的進程越多(every process has a rank),越能達到系統以真正並行方式執行進程的能力的限制。
您的系統(例如您的計算機)可以並行運行一定數量的進程,當超過此限制時,某些進程將等待執行(因此並非所有進程都並行運行),這會損害性能。
例如,假設一臺計算機有4個內核,並且您創建了4個進程,那麼每個內核都可以執行一個進程,因此進程之間的通信會損害您的性能(如果有的話)。
現在,在同一臺計算機上,您將創建8個進程。會發生什麼?
4個進程將開始並行執行,但其他4個將等待使內核可用,以便它們也可以運行。這不是一個真正的並行執行(某些進程將以線性方式執行)。而且,根據操作系統調度策略,某些進程可能會交織,導致每臺交換機都會產生開銷。
相關問題
- 1. 大SKSpriteNodes導致幀速率下降
- 2. openMP的並行化效率
- 3. 多線程 - 效率降低,可能是`虛假共享'所致[
- 4. SleepEx()期間CPU使用率不下降()
- 5. 帆布幀率下降
- 6. Web API導致內存使用率99%,沒有下降
- 7. 在效率下降之前可以產生多少個線程?
- 8. 遞歸下降vs.生成的解析器 - 效率
- 9. 停止浮動權下降到下一行(浮動下降)
- 10. jQuery效率低下?
- 11. 填充數據下降到下一行
- 12. iOS模擬器運行動畫的效率降低了嗎?
- 13. 編碼效率VS執行效率
- 14. 以下哪一項會更有效率?
- 15. 費率限制急劇下降
- 16. 從morningstar.com上拉/下降捕捉比率
- 17. Adblock Plus動畫幀率下降
- 18. 降低幀率
- 19. 降低幀率
- 20. 這不會使varchar2效率低下?
- 21. 拖放JPanel的下降不會下降
- 22. MySQL使用文件排序,並導致性能下降
- 23. 如何在不降低分辨率的情況下降低UIImage的質量?
- 24. 何時執行速率降至queue.xml以下?
- 25. php下載不一致的行爲
- 26. JavaScript Slider效果不一致
- 27. AJAX導致效果不一致
- 28. Firefox Jquery appendTo效率低下?
- 29. 多進程效率低下
- 30. Javascript代碼效率低下
可能應該發佈代碼來重現您的問題。你可以將它編輯成你的問題。 –
如果您的應用程序受內存限制,則同一套接字上的所有隊列將共享相同的內存帶寬。這將解釋效率下降 –
對不起科迪格雷,但我不能分享代碼由於工業產權問題 – makmarios