さて、今回は懐かしのSuper πを実行した結果を肴に話を進めていく。Super πとは、π(円周率)の計算をPC(Windows)で実行するWin32プログラム(アプリケーション)で、現x86/x64プロセッサに実装されているx87命令より以降の数値演算のための拡張命令は、一切使わないオールドタイプのプログラムである。
というのも、Super π(Windows版)がリリースされたのはWindows 95が登場した年でもある1995年であって、この頃のマイクロプロセッサといえば、最上位がP5マイクロアーキテクチャを実装するPentiumで、まだまだ80486系も現役だったし、ノートPCにおいては主力プロセッサといってよかった。数値演算(浮動小数点演算)向けの機能がマイクロプロセッサに実装されず、今日におけるGPUのように外付けチップであった時代が終わりを告げつつあったのが 80486からPentiumに跨がる頃で、i80486DXの普及版であるi80486SXにはいわゆるx87命令を実装する部分が別チップとして切り離された。だが、i80486SXに浮動小数点演算機能を追加するための i80487SXは、事実上i80486DXそのものでわずかにピン配置が一部異なるだけでしかなかった。
それまでの浮動小数点演算用外付けチップ(i8086向けのi8087や i80386DX向けのi80387DXなど)は、マイクロプロセッサ本体側の機能を持たず、純粋に浮動小数点演算用の機能しか持たなかったが、i486世代になってからは新たに浮動小数点演算用の新チップを開発するのではなく、プロセッサに浮動小数点演算機能が組み込まれた既存のi80486DXが流用されたのである。これがのちのOverDriveプロセッサへ発展(既存プロセッサを追加・交換して機能アップするCPUをエンドユーザーへ直接販売)するわけであるが、思いっきり横道に逸れつつあるので軌道修正(苦笑)。
とまぁ、古いプログラムであるので昔のx87命令しか使っていないSuper πでは、過去のマシンとの直接比較がし易いということである。では、VAIO Duo 13 | red editionでの結果を見てみよう。
いつものように104万桁。WOW64で実行しているため、物理メモリや空き物理メモリの容量は正しい値ではない。それ以外は問題なく、実行時間は11秒となった。
なお、実行中はタスクマネージャーの表示を見ればわかるように、マイクロプロセッサはTurbo Boost時最高クロックに近いスピードで実行していることが確認できる。シングルスレッドのSuper πであるが、CPU切り替えはOSによって適宜変更されており、またSuper π以外でも数多くのプログラムがバックグラウンドで実行されていることから、CPU使用率は25%(DuaiコアでHyper-Threading=2x2=4のうち1つを占有)前後とはならず、概ね35%前後を推移する。この11秒という結果は、私がここ10年ほど使用してきたPCと比べると、以下のようになる。
- Dual Xeon(Foster) 1.70GHz [NetBurst] → 111秒
- Dual Xeon(Prestonia) 2.20GHz [NetBurst] → 83秒
- VAIO PCG-GR9E(Mobile Pentium III-M 1.20GHz)[P6] → 115秒
- VAIO Z [初代](Pentium M 1.60GHz)[P6改, Banias] → 59秒
- VAIO type SZ(Core Duo T2600(2.13GHz))[Core MA, Yonah] → 29秒
- VAIO type Z (Core 2 Duo T9600(2.80GHz))[Core MA, Penryn] → 17秒
- VAIO Z11(Core i7-620M(2.66GHz))[Core MA, Nehalem] → 13秒
- VAIO Z21(Core i7-2620M(2.70GHz))[Core MA, Sandy Bridge] → 11秒
- VAIO Duo 13 | red edition(Core i7-4650U(1.70GHz))[Core MA, Haswell] → 11秒
Sandy Bridgeと結果はほとんど変わらない。L3 Cache(Last Level Cache)メモリにすべて入ってしまうプログラムサイズ(ファイルレベルではなくメモリに展開するレベル)ということや、x87命令しか使っていないこと等、様々な理由が考えられるが、この演算スピードの進化が消費電力の増を伴わないレベルで行われたことに意義を感ずるところである。
さて、番外編としてSuper πの亜流である、小数点以下第3位まで表示可能な Super PI / mod1.5 XS の結果を示すと、11.344秒だとなった。Super πが金田研究室で作られた頃(Windows版は移植版であってその元版)と違って、マイクロプロセッサが当時のスーパーコンピュータ以上の演算性能を発揮する現在、実行時間が秒単位では少ない桁数での実行に差が出てこない。だからこそ求められたミリ秒単位となるだろうか。
といったところで、今回はここまで。
コメント