*m.i.e.l.

アクセスカウンタ

help リーダーに追加 RSS 講義録16の課題

<<   作成日時 : 2005/10/22 23:42   >>

トラックバック 0 / コメント 0

スーパーコンピュータ
 大規模な科学技術計算に用いられる超高性能コンピュータのことで、その時点での最先端の技術を結集して開発され、価格も性能も他のコンピュータとは比べ物にならないほど高い。
 原子力、自動車、船舶、航空機、高層ビルなどの分野で設計やシミュレーションに使われ、近年では分子設計や遺伝子解析などバイオ、化学分野での導入も活発になっている。大学や研究機関で使われることが多いが、一般企業でも導入が進んでいる。
 科学技術分野で頻繁に使われる行列計算などの大量の繰り返し演算を高速化するため、ベクトルプロセッサと呼ばれる特殊な演算装置を用いて並列処理を行なう方式が主流であったが、パソコンなど小型のコンピュータ向けのマイクロプロセッサの飛躍的な性能向上と低価格化を受けて、近年では多数のマイクロプロセッサを接続して並列に動作させるMPP方式のスーパーコンピュータが増えている。


パイプライン処理
 CPUの処理速度を上げるための技術。最近のパソコン用CPUは、ほとんどこの技術に対応している。
 パソコンをはじめとして現在のコンピュータは基本的に、(1)命令を読み込む、(2)それを解釈する、(3)実行する、(4)結果を返す、といった手順で作業を行っている。そして、それぞれの作業に、1クロックが必要になる。この作業が順調に繰り返されていれば、すごく効率がいいように見える。しかし実は、ムダだらけだ。CPUの中では、上記4つの作業を別々の部分が担当している。そのため、どの部分も4クロックに1回しか仕事をしていないことになる。
 これを解決するために採用されたのがパイプライン処理だ。たとえば、命令を取り込む部分は、命令を解釈する部分にデータを渡したら、すぐに次の命令の取り込みを行う。こうして、どの部分も同時に次々と作業すると、単純計算で4倍の作業ができることになる。
 しかし実際には、そう単純には行かない。同じような作業が連続している場合は効率がいいのだけど、別の作業に切り替わったりすると、途中まで行っていた作業がムダになってしまう。つまり効率が落ちる。これを避けるために、分岐予測という技術が使われている。また最近のCPUは、複数のパイプライン処理を平行して実行できるようなっている。この技術を、スーパースカラーという。
 一方、ひとつの作業をより細分化してパイプラインを長くするといった工夫もされている。たとえばインテル社のペンティアム4は、なんと20段階ものパイプライン処理に対応していて、これをハイパーパイプラインと呼んでいる。


ベクトル処理
 ベクトル演算、行列演算を行なうことを前提に設計されたプロセッサのこと。
 まずメインメモリ上にベクトル、 行列などのデータを展開しておく.。次にプロセッサにそのデータをどのように処理するか(例:和・差を求める,、内積を求める、外積を求めるなど)について指示を与える.。そうした上で、プロセッサにデータ処理の指示を与えるとメインメモリ上に展開されたデータを大量に演算するというもの。この演算を効率よく行なうために非常に大きなメモリ帯域幅と多数のベクトルレジスタを用意していることを特徴とする。
 その仕組み上、同じような計算を大量に行なう科学技術計算を特に得意とする、 たとえば3行3列の行列同士の和・差の演算を例に取るとスカラー型プロセッサでは必ず9演算命令(メモリからのデータの取得格納を含めると実際の命令数は更に多い)であるのに対し、ベクトル型では前処理をしておけば1命令で処理可能にもなる。これは大きな行列の積の計算になるとより顕著に差が現われる。
 近年ではスカラー型プロセッサの並列処理技術が上がったため、スカラー型でも十分ベクトル型プロセッサの処理能力を出せるという意見もある。ただし、ベクトル型スーパーコンピュータの雄であるNECは科学技術計算ではベクトル型プロセッサの方が優位であるという姿勢を崩していない。
 実際にはベクトル型プロセッサとスカラー型プロセッサでは得意とする分野がはっきりと分かれているため、どちらがより優位であるとかいう議論はあまり参考にならないようだ。


マルチCPU
複数のCPUで設計されたコンピュータ・システム。
 小規模のコンピュータでは、単一のCPUですべての処理を行うが、処理内容が複雑化すると、単一のCPUでは十分な速度で処理を実行することが困難になる。その対策の一つがマルチCPUである。
 マルチCPUシステムでは、たとえば一連の処理はその目的別にいくつかの処理に分けられる。各処理に一つのCPUを割り当てると、それぞれのCPUは割り当てられた処理だけを行えばよく、単一のCPUですべての処理を行う場合にくらべて処理速度が向上する。
 しかし、CPU間の処理速度がまちまちだと処理全体で見たときに不都合が起きる場合があるので、各CPU間の処理速度のバランスをとるために新たに別のCPUを使用することがある。


参考文献
http://e-words.jp/
http://info1.nttpc.info/Help/manual/0845.html
http://www.wdic.org/
http://www.cqpub.co.jp/term/

設定テーマ

注目テーマ 一覧

月別リンク

トラックバック(0件)

タイトル (本文) ブログ名/日時

トラックバック用URL help


自分のブログにトラックバック記事作成(会員用) help

タイトル
本 文

コメント(0件)

内 容 ニックネーム/日時

コメントする help

ニックネーム
本 文