アカウント名:
パスワード:
しかしこれらをリアルタイムで行うにはネットワーク環境が2重の意味でボトルネックになります。 通常PC1台だとメインメモリ->バス->CPU程度の通信で済んでいる処理が、 メモリ->バス->CPU->バス->PCI->PHY->ネットワーク*2(折り返し)*分散数 ぐらいに増えてしまうことが一つ。 それだけでもリアルタイムでの処理を分散でやるのが厳しいのは明らかです。 バックグラウンドの処理だけまわす、という意味ではCore2のほうが遥かに効率が優れています。 もうひとつは、複数台マシンがある場合には、処理を分割、収集するマシンは 返答が確実に別々の時刻に来るように管理するか、 少なくとも分散する数の半数以上の返答を同時に受けられる程度に太い回線を持たなければ、 複数台同時の処理に待ちが出てしまい分散の効果が著しく下がります。 また、収集サーバの能力もボトルネックの一つで、 極端な例ではGbEの上限で収集し続けるような状況ではサーバのHDDがボトルネックになるなどして 結果収集のためにハードウェア負荷分散のラウンドロビンを立てるハメになったりします。 当然その分効率は下がります。 CPUに関してはLVMなどでできるストレージと比べて足し算でスケールメリットを得るのが難しいと言えるでしょう。 Google以前の記憶ですが、PCで単純に負荷を分散した場合、分散の効率は4分散〜16分散で飽和してしまい、 それ以上では効率が落ちていたように思います。4以上で効率が上がる物の方が少なかったです。 やや曖昧な記憶なのですが、効率だけ考えると2分散が一番効率よかったと記憶しています。 適当に拾ったPDFですが、グラフはほぼこういった傾向になってました。 http://www.iri-tokyo.jp/research/seika/guriddo.pdf [iri-tokyo.jp] グリッドコンピューティング応用@都立産業技術研究所 (PDF) もちろん処理の内容に激しく依存するデータなので一概には言えません。 しかし、バラバラなリクエストがバラバラに存在するようなGoogleのような環境ではなく、 一人で使うデスクトップなど、せいぜい数百程度のタスクを一人二人が起こすような環境で 効果を実感できる分散処理となると、ゼロからソフトを作り直しても厳しい物があると思います。 速いマシンで作業していて待ちがある程度に重い処理、エンコードなどは処理次第で速くできるでしょうが。 一台で疑似2〜4CPU(足かせ無し)というここ数年のCPU環境は 過去のCPU10台足し算しても得られない効率で働いています。 ありがたく乗り換える方を電気代的な意味でお薦めします。 動かしたいのは止めようがありませんが、電気メーターが回るスピードが10倍違うと家族の視線が痛いです。 #Xgirdのその後が気になってましたが、もう離れて長いので忘れることにしました。
10人月だからといって、100人突っ込めば2,3日で終わるなんてこと無いよね。
>PentiumIIIくらいのパワーの家電が10台
そんなに電気と場所と通信インフラとプログラマーの創意工夫を使わなくても、3~5万も出せば余裕で一台で
>GnomeやAeroGlassを快適に動かせる
からじゃないすかね。どう考えてもコストパフォーマンスが悪い。
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
私はプログラマです。1040 formに私の職業としてそう書いています -- Ken Thompson
クラスターとx86向けOSの関係がよくわかりません。 (スコア:2, 興味深い)
巫女ぐにゅがはじめて某カタログに乗ったころにクラスタリングも身近になったんだなぁと思いました。
が、未だ自宅でクラスタリングって無いですよね。
そこそこ高性能のPCを数十台や数百台組み合わせて、その上でLinuxを動かすというのは
やはり、その上でx86用のLinuxを動かしているのだと思いますが…
1ノードが一つのx86PCだという解釈は合っていると思っているのですが
やはり、専用の計算ソフトでなければ、複数ノードを使って
一つのプログラム(つまり一つの仮想マシン)を高速に動かすことはできないのですか?
たとえば、PentiumIIIくらいのパワーの家電が10台あれば
それがクラスタを形成し、その上の一つの仮想マシンで効率よく
GnomeやAeroGlassを快適に動かせるとか?そういうわけにはいかないのでしょうか?
単に、そういった実装が実現されていないだけ?
GbEが遅すぎるからそんな曲芸はできないってだけ?
未来のデスクトップOSはパソコンではなく、多数のデジタル家電の上で動いたりしないのですか?
Re:クラスターとx86向けOSの関係がよくわかりません。 (スコア:1, 興味深い)
しかしこれらをリアルタイムで行うにはネットワーク環境が2重の意味でボトルネックになります。
通常PC1台だとメインメモリ->バス->CPU程度の通信で済んでいる処理が、
メモリ->バス->CPU->バス->PCI->PHY->ネットワーク*2(折り返し)*分散数
ぐらいに増えてしまうことが一つ。
それだけでもリアルタイムでの処理を分散でやるのが厳しいのは明らかです。
バックグラウンドの処理だけまわす、という意味ではCore2のほうが遥かに効率が優れています。
もうひとつは、複数台マシンがある場合には、処理を分割、収集するマシンは
返答が確実に別々の時刻に来るように管理するか、
少なくとも分散する数の半数以上の返答を同時に受けられる程度に太い回線を持たなければ、
複数台同時の処理に待ちが出てしまい分散の効果が著しく下がります。
また、収集サーバの能力もボトルネックの一つで、
極端な例ではGbEの上限で収集し続けるような状況ではサーバのHDDがボトルネックになるなどして
結果収集のためにハードウェア負荷分散のラウンドロビンを立てるハメになったりします。
当然その分効率は下がります。
CPUに関してはLVMなどでできるストレージと比べて足し算でスケールメリットを得るのが難しいと言えるでしょう。
Google以前の記憶ですが、PCで単純に負荷を分散した場合、分散の効率は4分散〜16分散で飽和してしまい、
それ以上では効率が落ちていたように思います。4以上で効率が上がる物の方が少なかったです。
やや曖昧な記憶なのですが、効率だけ考えると2分散が一番効率よかったと記憶しています。
適当に拾ったPDFですが、グラフはほぼこういった傾向になってました。
http://www.iri-tokyo.jp/research/seika/guriddo.pdf [iri-tokyo.jp] グリッドコンピューティング応用@都立産業技術研究所 (PDF)
もちろん処理の内容に激しく依存するデータなので一概には言えません。
しかし、バラバラなリクエストがバラバラに存在するようなGoogleのような環境ではなく、
一人で使うデスクトップなど、せいぜい数百程度のタスクを一人二人が起こすような環境で
効果を実感できる分散処理となると、ゼロからソフトを作り直しても厳しい物があると思います。
速いマシンで作業していて待ちがある程度に重い処理、エンコードなどは処理次第で速くできるでしょうが。
一台で疑似2〜4CPU(足かせ無し)というここ数年のCPU環境は
過去のCPU10台足し算しても得られない効率で働いています。
ありがたく乗り換える方を電気代的な意味でお薦めします。
動かしたいのは止めようがありませんが、電気メーターが回るスピードが10倍違うと家族の視線が痛いです。
#Xgirdのその後が気になってましたが、もう離れて長いので忘れることにしました。
Re: (スコア:0)
並列化されていないプログラムは物理的に速い(一台の)PCで走らせる以外に速く実行する方法はありません。
Re: (スコア:0)
それを何とかする方法はないの?コンパイラレベルで。
(言ってみただけ)
Re:クラスターとx86向けOSの関係がよくわかりません。 (スコア:1, おもしろおかしい)
ありません。
Re: (スコア:0)
10人月だからといって、100人突っ込めば2,3日で終わるなんてこと無いよね。
Re: (スコア:0)
破綻という意味で。
Re: (スコア:0)
>PentiumIIIくらいのパワーの家電が10台
そんなに電気と場所と通信インフラとプログラマーの創意工夫を使わなくても、3~5万も出せば余裕で一台で
>GnomeやAeroGlassを快適に動かせる
からじゃないすかね。どう考えてもコストパフォーマンスが悪い。
Re: (スコア:0)
クラスタって業務環境でヘビーな用途が主だから。
Re: (スコア:0)