これは自由な質問です。私はどのようなアプローチを検討すべきですか?CPU集約型.NETアプリケーションを並列化するための現在の最適なオプションは何ですか?
答えて
現在、テスト中であり、MicrosoftのParallel Computing Developer Centerで利用可能な、いくつかの.NETの並列拡張があります。 Parallel foreachやPLINQという並列バージョンのLINQのようないくつか興味深い項目があります。拡張機能に関する最善の情報の一部はChannel 9です。
考慮すべき最良のオプションの中にある場合は、非.NET固有の並列処理方法も含めることができます。
@Larsenal
あなたは.NETの外に分岐したい場合は、IntelのThreading Building Blocks C++のための並列ライブラリである程度多くの議論がありました。
まず、問題の並列性を見つけて理解することです。置き換えられるシングルスレッドコードよりも優れたマルチスレッドコードを書くのは本当に簡単です。 「並列プログラミングのパターン」(Amazon)は、主要な概念の素晴らしい紹介です。
実行可能な設計をしたら、MSDN Magazineの(link)アーカイブの「並行性」トピックの記事、特にJeff Richterが書いた記事を読んでください。それらは、Windowsと.NETに特有のスレッド構造にナットとボルトを提供します。 (Richterの "CLR via C#(Amazon)のマルチスレッディングセクションは短いですが、非常に洞察に満ちたものです - 強くお勧めします)
解決方法はたくさんありますが、解決すべき問題の性質によって最適な解決方法が決まります。あなたはembarassingly parallel問題を解決しようとしている場合は、タスクを分割し、parallelisingすることは些細なことだろうその場合の課題は、使用するデータを配布および管理に来る
いくつかの提案は次のようになります。。
- ICE Grid .Netと他の共通言語のバインディングを持っています
- VelocityオラクルのMicrosoftのバージョン(Tangersol)コヒーレンス
- マイクロソフトCompute Cluster Serverどのようなハードウェア
- Data Synapse Grid Server
- 1. CPU最適化のための.NETアプリケーションをコンパイルするには?
- 2. 計算集約型並列アプリケーションとI/O集約型並列アプリケーションに適したスレッドのタイプはどれですか?
- 3. AWSでホストされている.NETアプリケーションのCPU集約型タスクのスケーリング
- 4. JavaでCPU集約型タスクを高速化できますか?
- 5. データ集約型アプリケーションの開発に最適なGWTライブラリ
- 6. .NETで現在の合計CPU負荷を取得する最も簡単な方法は何ですか?
- 7. シンプルジャンゴ集約 - 最適化
- 8. 取引アプリケーションのCPUを削減するためのタスクの最適化
- 9. 与えられたCPUアーキテクチャの最適化のためのGCCオプション
- 10. 基本的なWebベースのビデオ編集の現在のオプションは何ですか?
- 11. 最適化GROUPBY集約パンダは
- 12. "tree - ***"ファミリーのGCC最適化オプションの目的は何ですか?
- 13. wcfアプリケーションを集中管理するためのオプションは何ですか?
- 14. 凸最適化のためのdotnetライブラリは何ですか?
- 15. RIMアプリケーションを作成するための最適な言語は何ですか?
- 16. 並列実行のためのSeleniumテストの最適化
- 17. ファイルアソシエーションのためのddeの最適な.net代替手段は何ですか?
- 18. .netバイトコードを生成するためのオプションは何ですか?
- 19. CPU集約型COMの分散処理
- 20. Application.Runは、アプリケーションのCPU消費関数の上位です。私は何を最適化できますか?
- 21. VBAでクエリを最適化するための最適なツールとは何ですか?
- 22. ASP.net WebFormsはCPU集約型プラットフォームですか?
- 23. .NETアプリケーションの負荷の最適化
- 24. NetezzaでWindowed集約パーティションを最適化する方法
- 25. メモリ/ CPUの最適化?
- 26. パラメータ化された集約に最適なアプローチ
- 27. .NETアプリケーションでリソースをグループ化するための最良の方法は何ですか
- 28. Juliaで並列ループを返す配列を最適化する
- 29. ライブウェブサイトのサムネイルを最適化する最適な方法は何ですか?
- 30. アクターと並列化するのに適した最小の単位は何ですか?
から今後のHPC製品ですか? CPU集約型でシングルコアCPUが1つしかない場合は、複数のスレッドがパフォーマンスを低下させます。また、PCのクラスタにパラレル化する必要がある場合、それは1台のPC上の複数のスレッドとは非常に異なる動物です。 – mbeckish