1

これこの論文を読んだ後、学部論文の仕事として、MapReduceに大規模なデータセット用の分散ボリュームレンダリングセットアップを実装することにしました。Hadoopは合理的な選択ですか?Javaであると、パフォーマンスが向上したり、CUDAとの統合が困難になったりしませんか?フェニックス++はその仕事のためのより良いツールでしょうか?

4

1 に答える 1

0

Hadoopには、HadoopPipesと呼ばれるC++APIもあります。Pipesを使用すると、C ++でMapおよびReduceコードを記述できるため、使用可能なC /C++ライブラリとインターフェイスできます。これにより、CUDAとのインターフェースが可能になることは理にかなっています。

私の理解では、これはMapReduceの書き直しにすぎないため、すべてのネットワーク通信と分散ファイルシステムは引き続きJavaによって処理されます。Hadoopは、タスクの並列化を単純かつ一般的にすることを目的としているため、最も効率的なMapReduceの実装にはなり得ません。効率と利用可能なプログラマー時間の要件は、おそらくHadoopまたはより効率的な低レベルのフレームワークを使用する際の決定要因になります。

パイプの単語数の例。残念ながら、ドキュメントは実際には不足していますが、ソースを利用できるようにしておくと、作業がはるかに簡単になります。

于 2011-06-15T20:27:31.163 に答える