こんな感じでしょうか?(長文)



[ このメッセージへの返事 ] [ 返事を書く ] [ home.html ]



投稿者: Miss.MIGHT @ isw.main.eng.hokudai.ac.jp on 97/10/30 13:29:10

In Reply to: ふ〜ん・・・

posted by カマタッツン @ 160.26.80.145 on 97/10/30 12:57:40

> 1つしかCPU積んでないマシンで
> 2つCPU積んであるマシンのソフトを作るからですか?

命令系統が2つある会社を想像してください。つまり、社長命令と、会長命令
の両方が有効な会社です。で、社長命令で「A社との取り引きをしなさい。会
長にさきを越されないように。」、会長命令で「A社との取り引きをしなさい。
社長にさきをこされないように。」、と対立する命令をされたら、業務に支障
をきたしますね。たがいに足をひっぱるので。

けど、社長命令で「A社との取り引きを有利にすすめる人選をしなさい。」、
会長命令で「A社との取り引きを有利にすすめるため、B社に対して手をうち
なさい。」であれば、最終的には「A社と取り引きをする」という共通の目的
にむかいつつ、違うことを並行して行なうことになるので、効率いいですよね。
けど、これは互いに連携プレーをするために、情報交換を密にしないと難しい
ですね。

サターンの2つのCPUを、上述の社長命令と会長命令にあてはめましょう。

前者のほうは、例えば2つのCPUがCD-ROMを同時にロードするように
プログラムしてしまって、1つのCPUがロードし終るまで、もう片方は待っ
てなきゃならないという無駄が生じた場合とかです。(待ってる間になにかで
きるのに)

後者のほうは、ポリゴングラフィックの計算をするのに、1つのCPUで背景
のグラフィックを、もうひとつのCPUでキャラクタのグラフィックを計算す
るとか役割分担をすると、同時に計算できて処理速度が向上しますよね。けど、
最終的にひとつの画面に表示するので、うまく情報を交換してタイミングをあ
わせなくてはなりません。ここが、サターンでのプログラムをむずかしくして
います。けど、うまくやれば、1つだけのCPUよりも飛躍的な処理速度のア
ップが期待できます。