先日、会社で「今でもしっかり残っているギガヘルツ(メガヘルツ)神話」は残っているのだなぁと感ずることがあった。それは、「Windows VistaがMicrosoft社の計画よりも劣った形でリリースされたのは、PCのパフォーマンス(特にマイクロプロセッサのパフォーマンス)が、Microsoft社の想定よりも進まなかったからだ」という理屈から、それがマイクロプロセッサの動作クロックの伸びに象徴されるという議論を聞いたからである。
確かに、2002年当時を思い出すと、Intel社は今頃は10GHzを突破するマイクロプロセッサをリリースしている計画だった。2003年には3GHzを突破しており、それまでは2年ごとに倍々ゲームでクロックを伸ばしていた。なので、2007年に10GHzというのは、チャレンジであるが、けっして不可能ではないと思われていた。
だが、最新のマイクロプロセッサでも4GHzを突破することも厳しい状況にある。クロックという数字だけ見れば、停滞としか映らないのも無理はない。しかし、この間、Intel社はマイクロアーキテクチャをNetBurstマイクロアーキテクチャからBanias(P6改)アーキテクチャに変更し、同クロックにおいて、2倍弱のパフォーマンスを発揮するようになった(命令種別により一様にいえるものではないが)。
さらに、Banias(Pentium M)を改良し、デュアルコア化したYonah(Core Duo)を経て、Coreマイクロアーキテクチャと名前を与えられたMerom(Core 2 Duo)に改良されていく過程で、クロックあたりの命令実行率を向上し、NetBurstマイクロアーキテクチャとは2~3倍以上の性能向上を達成している。同じ3GHzであったとしても、NetBurstマイクロアーキテクチャと4コアのCoreマイクロアーキテクチャでは、命令種別によるが、NetBurstに換算すれば10GHzに相当するといっても過言ではあるまい。
つまり、クロック表記上は停滞しているように見えているが、マイクロアーキテクチャの進歩により、性能向上は達成できているのが現状である。よって、見た目の動作クロックが停滞しているからと言って、性能向上が停滞しているわけではない。このことを考慮に入れず、単にクロック表記だけを見て議論を進めるのは、Microsoft社やIntel社等に失礼にあたるものと言えるだろう。
Windows Vistaの遅れた本質的な問題は、製品計画のいい加減さ(言葉が悪ければ曖昧さ)と、性能重視からセキュリティ重視に転換されたことに他ならない。Bill Gates氏のようにコアなプログラマとしての豊富な経験がある人と、Stave Ballmer氏のように営業上がりの人とでは、開発に対する直感的な本能というか、開発スケールから見て、厳しいかそうでないかの判断が働くかそうでないかの決定的な違いがあるだろう。Longhorn(Windows Vistaの開発コードだが、最初の位置づけはそうとは言い切れない)は、そもそもWhisler(Windows XP)からBlockcombへの「つなぎ」に過ぎなかったのだが、途中から巨大プロジェクトとなってしまった。
個別に開発されていた様々なプロジェクトを同時リリースとし、それをOSのバージョンアップとして位置付けたからである。このことに対し、Bill Gates氏は開発の困難さを直感したが、CEOであるSteve Ballmer氏は営業的観点から、同時リリース(=OSのバージョンアップ)の方がいいとした。技術対営業の立場の違いであるが、営業が勝った。これにより、複雑怪奇なプロジェクトとなり、これは結果として空中分解に終わった。まったくの徒労ではなかったが、ソースコードレベルで見れば、2年以上の期間が無駄に終わったのである。
Longhornは、2003年以前のWinHEC等で既に青写真が示されていたが、一からやり直しとなった時点で、現実的な選択肢を取り始めることになる。Windows XPをリリースしてから、ほぼ丸2年以上が無駄になったことから、開発期間に余裕はなくなり、夢を描くのではなく現実を選択する(=多くの開発プロジェクトがLonghornから外される)のは明らかだが、これにより他プロジェクトも大きな影響を受けることとなった。その代表的なものは、Microsoft Officeであり、Vistaから導入される予定だったWinFSに合わせて作られていたものをはじめ、様々なVista専用機能を採用し、Windows Vista専用となる(おそらくOffice Vistaと名乗ったことだろう)予定だったものが、結局、Windows XPでも利用できるようなOffice 2007と変わり映えのしないものとなってしまった。つまり、大きく変わるはずだったVistaは、OS側の開発の都合により、リリース最優先となることで大きく変わり損ねたのである。
Windows VistaがMicrosoft社の計画よりも劣った形でリリースされたのは、PCのパフォーマンス(特にマイクロプロセッサのパフォーマンス)が、Microsoft社の想定よりも進まなかったからだという理屈は、技術的にもさることながら、現実としても正しい見方ではない。マイクロプロセッサは、動作クロックとは別次元で性能向上を実現しているし、Windows Vista(仕切り直しLonghorn)はWindows Server 2003をコードベースとして、わずか一年程でコードをほぼ完成している(その後はベータテスト等)。
要は、大風呂敷を広げ過ぎたものを修正し、経過した時間が無駄となったことから、わずかな時間でできるものを現実レベルで選択したのが、Windows Vista。それだけのことである。
コメント