並列コンピューティングの
並列ってどういう意味ですか?
並列コンピューティング(へいれつ-、parallel computing、並列計算、並列処理)とは、コンピュータにおいて複数のプロセッサで1つのタスクを動作させること。問題を解く過程はより小さなタスクに分割できることが多い、という事実を利用して処理効率の向上を図る手法である。また、このために設計されたコンピュータを並列コンピュータという。ディープ・ブルーなどが有名。 関連する概念に並行計算があるが、並行計算は物理的な並列化のみならず、マルチスレッドなどで仮想的な資源の多重化を行い、プロセッサの待ち時間を他のタスクに利用する場合も含む。
一般的には多くのパーソナルコンピュータや、サーバ、スーパーコンピュータを接続し、並列コンピューティングを行うものはクラスターと呼ばれることが多い。 このクラスターをさらにインターネットなどの広域ネットワーク上で分散・協調させるものも広義には並列コンピューティングに属し(クラスターは1台のパーソナルコンピュータでも構わないことに注意)、分散コンピューティングあるいはグリッド・コンピューティングと呼び(狭義の)並列コンピューティングとは区別することが多い。
可能性と問題点
並列コンピューティングは、プロセッサ同士が独立して同時に仕事をするため、理想的な状況下ではプロセッサの回路規模を大きくすること無く、プロセッサの数に比例して性能が得られると考えられ、スーパーコンピュータなどで古くからとられた手法である。
しかし、問題点もある。並列コンピューティングを行う場合、もっともパフォーマンスを発揮するのはこれら複数のプロセッサが全て100%使い切られた時と考えられるが、従来のプログラムの多くは、複数のプロセッサを均等に全て使い切るようにはできておらず、また、そういったプログラミングは難しい。
買い物を例にとろう。まず買い物の前に、財布の中身を確かめなければならないし、足りなければ銀行で補充もしなければならない。その後はじめてお店にも行かなければならない。銀行に行くのと、お店に訪れるのは同時にできないし、財布の中身を確認してからでなければ、お店には行けない。プログラムもこれと似て、実行順番が変えられなかったり、同時に実行できなかったりする部分がどうしてもできてしまう。このため複数のプロセッサで同時に、かつ実行順番に依存しないようなプログラムのみでプログラムを構成することは難しい。
関東圏デリヘル情報サイト大集合!!
エリアは東京、新宿、渋谷、池袋、鶯谷、
立川、町田、埼玉、横浜になどなど!!
鮮度抜群のデリヘル情報はここにありました!!!
並列コンピューティングでは、処理の"ある瞬間"ではそれぞれのプロセッサは実質まったく別に動作しており、そのため実行順番が全く問題にならないプログラムなら性能は引き出しやすい。しかし、先の例のように実行順番が強く束縛される場合は、あるプロセッサだけが働き、ほかのプロセッサはすることがなくなってしまうといった状態になり、性能が引き出しにくい。そのため,並列コンピューティングはそうでない場合と比べて性能を引き出すプログラミングが困難となる。
一般に、プログラムの処理が複数のプロセッサで均等に処理できる割合をプログラムの並列度と言うが、地球シミュレータの高い性能はこの並列度が他に比べて極めて高いことも重要な要因である。
以上のように、並列コンピューティングでは高い性能を発揮する為にはソフトウェアの並列環境への最適化が重要な鍵となる(詳しくは並列化を参照)。
(以上、ウィキペディアより引用)
なんかすごい仕組みなんですねー。