分散コンピューティングやグリッドコンピューティングで計算が出来るからスーパーコンピュータが不要だという発言が、実際に計算を行っていない人からなされています。であれば世界中で一カ所に集めたスーパーコンピュータがるのはなぜか?分割した計算を最終的に集めて同期を取らないといけないから。
一方で、ウェブ分野では、分散コンピューティングによる並列計算や、それをサポートする技術に注目が集まっているのも事実。基本的には、PCで使ってるCPUコア単体での性能向上が見込めなくなってきたのが大きな原因ではあるけど、それだけじゃない。
早い話がGoogleのMapReduceで、全体の処理を部分に分割できるタイプの計算なら、並列計算を非常に簡単にプログラミングできるフレームワークが出てきている。この間同社がリリースした「Go」もそうだね。
Googleがこうしたアーキテクチャを用いるのは、基本的にはコストの問題。Googleのバックエンドは、新しいマシンを投入すれば投入しただけ規模を拡大できる「スケールアウト」型のアーキテクチャになっている。マシン自体もコモディティなパソコンがベースになっているので、新規導入コストが非常に安い。この辺は、典型的な「スケールアップ」であるスパコンとは対照的(例えば地球シミュレータは、アップグレードのために200億円近くのコストがかかったりしている)。
また、ランニングコストも非常に安くできる。壊れたマシンは自動的にシステムからパージされるので、後からそのマシンだけ取り替えればいい。省電力の意味でも結構有効らしい。
このシステムが苦手なのは、元増田が引用したように、まさに計算の同期が頻繁に必要なタイプの計算。ただ、そうでないタイプの計算に有効なのはもちろん、コスト面で総合的に上回ったりとか、アルゴリズムの改良で分散システムでも扱えるようになるとか、そういう可能性はないのかなぁ、ということは思っている。
というわけで、詳しい人突っ込んでくれ。
ttp://twitter.com/tnishikawa/statuses/6071956325 分散コンピューティングやグリッドコンピューティングで計算が出来るからスーパーコンピュータが不要だという発言が、実際に計算を行っていな...
分散コンピューティングやグリッドコンピューティングで計算が出来るからスーパーコンピュータが不要だという発言が、実際に計算を行っていない人からなされています。であれば世...
計算する問題が分割されたままで良い、という領域においては当然そうなる。分割したもの同士が相互作用しないのなら。 残念ながらシミュレーション系においてはそらGRAPEが扱うなか...