マツド・サイエンス研究所

パソコンを買った理由

新しいパソコンを買った直接的な理由は、以前書いた通りで軌道解析などの計算を高速でしたかったからなのだが、もう一つ理由がある。新しいアーキテクチャを試したかったからだ。

パソコンのアーキテクチャは、もう15年以上も停滞したままだった。CPU は、i386 で 32 ビット化した後、進化が止まっていた。もちろん、486 とか Pentium とか、浮動小数点プロセッサが内蔵されたり、高速化されたりしたが、抜本的なアーキテクチャは i386 のままだった。パソコン自体のアーキテクチャも PC/AT のまま変化が無かった。これもメモリーが増えたり、バスの転送速度が高速化したりしたが、基本は昔のままだった。いくら高速になり、メモリーや HDD 容量が増えても、それは量的な変化であり、質的な変化とは思えなかった。

だから、私は、15年前に世間一般よりも早く PC/AT のデスクトップ・パソコンを手に入れて以来、新しいデスクトップ・パソコンは欲しいと思わなかったのだ。

この 15年間、パソコンはモバイルとインターネットの方向に進化していたんだと思う。だから、私の買ったものは、サブノート・パソコンだったり、Zaurus だったり、玄箱だったりした。

だが、数年前、i386 以降進化が止まっていた CPU アーキテクチャに新たなる変化が訪れた。それが、64ビット化とマルチコアだ。この64ビット化とマルチコア(デュアルコア)には、AMD 特に Athlon64 X2 の功績が大きい。

もちろん、64ビット化は、AMD が始めた訳じゃ無くて、以前から、DEC や HP やインテルだってやって来たことだと言うことは認識している。マルチコアだって、AMD が最初じゃ無いだろう。そもそも Athlon64 X2 自体が、AMD の中では、先行して64ビット・マルチコア化していたハイエンド CPU の Opteron を安価にした普及版との位置付けだ。

だが、それが分った上で尚かつ Athlon64 X2 の功績は認めざるを得ないと思うのだ。

Athlon64 X2 が出る以前の64ビットとマルチコアは、高いだけで色物の域を出ていなかった。少なくとも私にとっては、そうだ。将来性も不安で、コストに見合った性能向上も期待できず、それ以上にソフトが対応していなければ意味の無い64ビットとマルチコアは無用の長物に過ぎない。

ところが、Athlon64 X2 の登場は、リーズナブルなコストと低い発熱量のため普及し、それがソフトの対応に反映し、さらに普及へ拍車をかけた。その結果、64ビットとマルチコアは色物から、次世代の本命になった。

Athlon64 X2 の快進撃は、インテルをして大名跡の Pentium を止め、Core Duo、Core 2 Duo の投入に踏み切らざるを得ないほどだった。

Core 2 Duo 登場後、Athlon64 X2 は、インテルにトップを奪い返されるのだが、これが更なる波及を生む。AMD は Athlon64 X2 の価格を思い切り下げたのだ。

この事は、AMD にとって苦汁の選択だったのだろう。が、我々のような貧乏人のユーザーにとっては福音となった。ついに64ビット・デュアルコアCPUが、我々の手の届く値段に落ちて来たのである。

今回、Athlon64 X2 を購入したのは、コストパフォーマンスが良いこともさることながら、例え短期間と言え、巨人インテルに一矢を報いた勇者に敬意を表したのは言うまでもない。

64ビットとマルチコアCPUは、i386 以降停滞していたアーキテクチャを、久しぶりに進歩したと言い切れるほど大きな変化なのだろうか?

i386 が、それまでの CPU と違うのは、実は 16ビットから32ビットへの拡張ではない。MMUが内蔵され、メモリー保護と仮想化の実現が、その後の OS (Windows や UNIX)の出現を呼んだのだと思っている。ほぼ同時期に同じく MMU を内蔵した 68030 が登場するのだ、Mac を除いて広く普及にすることは無かった。これは「美しいアーキテクチャが必ずしも勝つ訳ではない」事の証明であろう。

では、64ビットとマルチコアは、i386 にとっての MMU 内蔵と言うほどの大きな変革なのだろうか?

実を言うと、それを言い切れるだけの確実な証拠は未だ無い。

64ビットは、直接アクセスできるメモリー容量が多くなるとかレジスタ数が増えるとかのメリットはあるものの、言ってしまえば量的な変化に過ぎないのかも知れない。

マルチコアは、どうだろう。動作するCPUが一つなのか二つなのかは、或る意味、量的な変化だ。しかし、単数なのか複数かは質的な意味もあるかもしれない。いずれはグレープのように超並列コンピュータに進化する第一段階と位置付けることができるなら大きな意味を持つだろう(ちなみに開発中の最新 GRAPE-DR は、一つのチップ上に 1024 コアを持ち、それを 2000 チップ、総計 200 万コアが同時に計算すると言う)。

実は、64ビットとマルチコアに隠れているが、もう一つの革新的技術である「仮想化支援機能」こそが、本命なのかも知れないと思い始めている。仮想化支援機能とは、i386 での仮想化機能から取り残された CPU の小さな一部分までをも仮想化する機能である。この機能により、完全な仮想化が可能になる。i386 アーキテクチャでは、アプリケーションプログラム・レベルでは仮想化できたが、OS レベルまで仮想化する事はできなかった。

仮想化支援機能のあるデュアルコア CPU なら、一つのコアに Windows を割り当てて、もう一つのコアに Linux を割り当てて同時に動かすことが可能になる。

ユーザーが一人しか居ない状態で、二つの OS を同時に動かして何の意味があるかと思う人も多いだろう。だが、20年以上も前に、「大型計算機のように多数のユーザーが時分割(TSS)して使うならともかく、一人しかユーザーの居ないパソコンに TSS によるマルチタスクを動かすことに何の意味があるのか」と議論したことを思い出す。当時、個人ユースにマルチタスクの意味があるとは思えなかった。しかし、現在ではマルチタスクなしにパソコンは考えられないし、そのマルチタスクを可能にする MMU こそが、i386 アーキテクチャの根底である。

さあ、私の見込み通り、64ビットとマルチコアと仮想化支援機能が、パソコンの飛躍を生むパラダイムシフトになるのか? 楽しみである。

注意

ブログのコンテンツの内、「告知」など時期よって情報価値が無くなるのは除いてある。また、コンテンツに付いたコメントは書き込み者に著作権があるものと判断し、ここに持ってきていないので、コメントを見るときは、元々のブログコンテンツを参照してもらいたい。

その他、ブログ発表後、コメントなどの内容を反映するなど、内容を変更しているものもあるので、注意してほしい。