私はomp parallel for
と他の類似した構成で何が起こっているのか正確に知りたいと思います。これらはどのように実装されていますか?これについて知っている人の短い要約はすばらしいでしょう。ありがとう。"parallel for"の実装を見つけるにはどうすればよいですか?
0
A
答えて
3
オープンMPは仕様に過ぎません。ベンダーが実装する方法は、それに応じて決まります。言われていることを、GCCの用途はオープンソースでライブラリが、そうプラグマとして、並列にだけではない持っているIntelのスレッドビルディングブロック、ですが、その実装は
0
http://www.compunity.org/futures/omp-api.html
を考えてみましょうどのようなあなたの後で単一のOpenMP並列構造を含み、4つのスレッドで実行されるメインプログラム、関数fooを呼び出す単純なOpenMPプログラム。並列領域への最初のエントリの前に、プログラムは、一つのスレッド、マスタースレッドを有し、そのスレッドは、ユーザーモデルの両方で同一のコールスタックを有し、実装モデル:
Master
foo
main
<start>
は、並列領域への参入後、4件のスレッドがあり、ユーザーモデルでは、彼らのコールスタックは、次のようになります。あなたが知っているように
Master Slave 1 Slave 2 Slave 3
foo-OMPa foo-OMPa foo-OMPa foo-OMPa
foo foo foo foo
main main main main
<start> <start> <start> <start>
0
それは変換しているため、OpenMPのは、コンパイラの内部に実装されますコードする並列化されたコードを生成します。内部の実装作業を知りたい場合は、this articleを読んで、インテルコンパイラのOpenMP実装の詳細を説明してください。
もちろん、libgompのomp-low.cなどのgccのOpenMP実装を参照することもできます。
関連する問題
- 1. 抽象メソッドhasNext()の実装を見つけるにはどうすればよいですか?
- 2. BFSで実際に見つかったパスを見つけるにはどうすればよいですか?
- 3. Echofon for iPhoneのようにナビゲーションボタンを実装するにはどうすればいいですか?
- 4. レーキタスクのソースファイルを見つけるにはどうすればよいですか?
- 5. k-bestソリューションを見つけるにはどうすればよいですか?
- 6. 各スレッドが実行されているプロセッサを見つけるにはどうすればよいですか?
- 7. 私のパッケージを見つけるにはどうすればいいですか?
- 8. 最後にを見つけるにはどうすればいいですか?
- 9. ビジュアルスタジオ2012でWindowsデザイナーを見ているコントロールを見つけるにはどうすればよいですか?
- 10. for-elseとforeach-else文をC#で実装するにはどうすればよいですか?
- 11. iBatis for Javaを使用して継承を実装するにはどうすればよいですか?
- 12. 2つのリストから一致するアイテムを見つけるにはどうすればよいですか?
- 13. TextMate:キーボードショートカットに関連付けられたコマンドを見つけるにはどうすればよいですか?
- 14. CLRはどのようにIDisposableを実装するクラスを見つけるのですか?
- 15. SpinnerのMatrixCursorを実装するにはどうすればよいですか?
- 16. javax.naming.Referenceableの実装をユニットテストするにはどうすればよいですか?
- 17. ポイントアンドクリックのユーザーインタラクションモデルを実装するにはどうすればよいですか?
- 18. iPhoneでセッションタイムアウトを実装するにはどうすればよいですか?
- 19. PHPでコールバックを実装するにはどうすればよいですか?
- 20. IronPythonでインターフェイスを実装するにはどうすればよいですか?
- 21. JavaScriptでpostMessage()を実装するにはどうすればよいですか?
- 22. neo4jでリビジョンを実装するにはどうすればよいですか?
- 23. FlashでRichTextEditorを実装するにはどうすればよいですか?
- 24. スイングでフェードボタンエフェクトを実装するにはどうすればよいですか?
- 25. Require.jsでTinyMCEを実装するにはどうすればよいですか?
- 26. Xamarinでドキュメントプロバイダエクステンションを実装するにはどうすればよいですか?
- 27. iPadにカスタムグリッドを実装するにはどうすればよいですか?
- 28. アプリケーションにタッチイベントを実装するにはどうすればよいですか?
- 29. Parallel for vs omp simd:それぞれをいつ使うのですか?
- 30. インターフェイスのメソッドの実装をすばやくどのように見つけるか?