最新のC++コンパイラの複数スレッドでのメモリ割り当ては、グローバルロックアクセスを引き起こしますか?コンパイラとオペレーションシステムの違いはいくらですか?個々のスレッドが必要とするときに動的に割り当てるのではなく、あらかじめ割り当てられたグローバル配列(あまりクリーンでなく、あまり便利ではない)に少量のデータを入れることにどれだけのメリットがありますか?マルチスレッドパフォーマンスへのメモリ割り当ての影響
0
A
答えて
1
すべてのスレッドは共通の仮想アドレス空間を共有しているため、ヒープ(mallocまたはnew)からのメモリ割り当てによってすべてのスレッドが使用する仮想アドレス空間が更新されます。これがどのように実装されるかは、オペレーティングシステムとコンパイラによって異なります。
割り振られたメモリが関数スコープを必要とし、大きすぎない場合は、alloca()(または_alloca())を使用して割り振ることができます。これはスタックから割り振ります。スレッドと関数のローカルインスタンスその割り当てられたメモリの
私が書いたマルチスレッドプログラムでは、起動時に割り当てられたメッセージおよび/またはバッファ「フリー」プールを使用して、スレッドにメッセージを「割り当て」、「解放」させたり、 「フリー」プールからのバッファ。
関連する問題
- 1. カフカパーティション再割り当てのパフォーマンスへの影響
- 2. Javaの繰り返しオブジェクトの割り当てのもパフォーマンスへの影響
- 3. 親への割り当てDataFrameは子のDataFrameに影響しますか?
- 4. 初期オーバーヘッドを超えたランタイム割り当ての影響
- 5. メモリ割り当て
- 6. 割り当てメモリ
- 7. 割り当てメモリ
- 8. メモリ割り当て
- 9. メモリ割り当て
- 10. 割り当てメモリ**
- 11. Dalvikのメモリ割り当て
- 12. Magentoのメモリ割り当て
- 13. プロセスのメモリ割り当て
- 14. メモリの割り当て(C)
- 15. iphoneのメモリ割り当て
- 16. `getaddrinfo()`のメモリ割り当て
- 17. リンクリストノードのメモリ割り当て
- 18. シャアのメモリ割り当て
- 19. メモリの割り当ては?
- 20. メモリ割り当て - プロセスツリーの共通メモリ
- 21. C++クラス配列のメモリ割り当ての再割り当て
- 22. C++の動的割り当てメモリ内での動的メモリ割り当て
- 23. メモリの割り当て/割り当て解除(WindowsではC++)
- 24. Pythonリストの割り当てとメモリ割り当て
- 25. UIViewController.viewのメモリ割り当て/割り当て解除
- 26. ダイレクトマップメモリに比べて仮想メモリのパフォーマンスへの影響は?
- 27. クラス変数を宣言する順序は、メモリの割り当て方法に影響しますか?
- 28. メモリ割り当てとループ
- 29. GtkTreeView treestoreメモリ割り当て
- 30. メモリ割り当て構造
これは実際には言語、デザイン、要件、ユースケース、使用されるフレームワークなどによります。 –