有沒有辦法知道OpenMP中減少操作的執行順序?換句話說,我想知道線程是如何執行簡化操作的 - 是從左到右的?當數字不是2的冪時會發生什麼?OpenMP中減少操作的執行順序
0
A
回答
2
我想你會發現,OpenMP的只會減少關聯操作,如+
和*
(或加法和乘法,如果你喜歡),這意味着它可以繼續漠視的組成部分的計算順序跨線程的減少表達式。
我強烈建議您在使用OpenMP時以相同的方式進行,試圖找出或限制執行順序,最多隻能將您的並行程序轉換爲順序程序,最壞情況下繼續爲您提供有效的隨機結果。
我不明白你對此是不是2
權力@JimCownie指出號最後一句,如+
和*
操作不上浮點數嚴格的關聯。在第一句中,我提到的聯想操作意味着操作,當它們應用於實數時,是聯想的,但是由於現代計算機上的數字計算技術人員熟知的原因,在應用時不能關聯到浮點數。
1
縮減順序未由OpenMP標準規定。
該標準允許減少浮點數(例如使用+),這是不關聯的。如果你不明白你應該去閱讀"What every computer scientist should know about floating-point arithmetic"。
相關問題
- 1. 減法操作的順序?
- 2. OpenMP緩慢減少
- 3. OpenMP實現減少
- 4. reactjs/flux:按順序執行操作(ajax)
- 5. 線程同步執行操作順序
- 6. 通過JavaScript執行順序操作DOM
- 7. DOM操作不能按順序執行
- 8. 使用jQuery按順序執行操作
- 9. jQuery按順序執行操作
- 10. OpenMP與並行減少的for循環
- 11. C++減少操作
- 12. 在Java中減少操作
- 13. 減少在iphone應用上執行大操作的時間
- 14. 並行OpenMP減少與功能定義?
- 15. openmp並行循環減少double *
- 16. OpenMP:減少和共享
- 17. OpenMP和減少std :: vector?
- 18. 如何使用MongoDB執行「減少和刪除零」操作
- 19. 減少操作次數
- 20. Numpy blockwise減少操作
- 21. 減少操作上火花
- 22. 減少操作次數
- 23. 如何減少GC_CONCURRENT操作?
- 24. 減少操作,但一個
- 25. 矩陣減少,自定義減少運營商的OpenMP
- 26. restkit中的操作順序
- 27. AMPL中的操作順序
- 28. 操作順序
- 29. Elixir減少元素的順序
- 30. 在不減少行數的情況下在火花上執行max()操作
約簡通常只需要一個關聯運算符,而不是可交換的。 – user57368 2013-04-30 19:57:26
現在編輯顯示更正確。 – 2013-05-01 08:11:25