前回は、VAIO type Zに搭載されているCore 2 Duo T9600が、2.93GHz動作を示したことで、これがTurbo Modeではないかという疑義を呈したところだが、今回も引き続き、この検証をかなり大雑把なだが行っていく。Turbo Modeは、正式名称?「Intel Dynamic Acceleration」といい、Santa Rosaプラットホームが登場した際、MeromコアのMobile向けCore 2 Duoプロセッサでサポートしたとされる。Intel社が言うには、
Intel Dynamic Acceleration = Improved performance for single threaded applications.
であり、要はシングルスレッドのアプリケーションを実行する際、2つのコアのうち、1つのコアをアイドル状態にし、その分のTDPでもう一方のコアを高クロック動作させる機能のことである。この機能は、Meromコアに引き続き、Penrynコアでもサポートされているものである(すべてのPenrynコアで有効にされているとは限らない)。
2つのコアのうち1つがアイドル、つまり休んでいる状態でTurbo Modeが発動すると単純に解釈するなら、強制的に1つのコアを休ませてしまえばいい。ということで、まずはMSCONFIGを実行する。
プロセッサコアを制限するには、「ブート」タブ内にある起動OSを選択してから、「詳細オプション」ボタンを押して設定変更を行う。
「ブート詳細オプション」では、様々な設定を変更できるが、ここでは「プロセッサの数」を変更する。言うまでもないが、ここで意味するプロセッサの数は、いわゆるSocket数ではなくプロセッサコア数のことである。そして、Windows Vistaでは確認していないが、Windows XPと変わらないのであれば、Hyper-Threadingテクノロジのような形で実装される論理プロセッサの数も含まれる。今回はCore 2 Duoなので、論理プロセッサはなく単にプロセッサコア数として2個として数えられる。設定を変えるには、チェックボックスにチェックを入れプロセッサ数を1にすれば、再起動後、事実上Core 2 DuoからCore 2 Soloに変わるわけである。
プロセッサ数を1にし、「OK」ボタンを押し、再びシステム構成画面に戻ったら「適用」ボタンを押す。すると、次のようなダイアログボックスが表示される。
ここは無論、「再起動」ボタンを押す。すると再起動処理が始まり、再びWindows Vistaが起動される。初期処理を行った後、CPU-Z 1.46を実行すると、プロセッサコアが1つになったことが確認できる。
画面下方の「Cores」が1、「Threads」が1とあることばかりを気に留めていたが、しばらくしておかしいことに気がついた。動作クロックが、2.80GHz(倍率10.5倍)から動かないのである。ただ、まったく動かないわけではなく、2793.2MHz前後にわずかながら数字の変動はあるので、CPU-Z 1.46が死んでいるわけではない(苦笑)。通常は、前回にも書いたように2.80GHz、2.13GHz、1.60GHzを遷移するのだが、プロセッサ数を1とした状態では2.80GHzのまま。そこで、電源プランを「省電力」に変更してみたが、これも変わらず。それではと、掟破り(苦笑)のダイナミック・ハイブリッドグラフィックス機能発動。SPEEDからSTAMINAにスイッチを切り替えてみた。しかし──
これも2.80GHz動作のまま。電源プランの変更だけでなく、様々な方法で負荷をかけたりかけなかったり…。だが、これでも2.80GHz(10.5倍)から動くことはなかった。どうやらWindows Vistaにおいて、強制的に1コアのみを有効にしてもTurbo Modeどころか、クロック可変機構すら無効にされてしまうことが確認できた。これでは、Turbo Modeの検証のしようがない(苦笑)。
よって、この方法は諦め、再びMSCONFIGでプロセッサ数の制限を元に戻し、Windows Vistaを再起動。この状態で、クロック可変機構とTurbo Modeが有効になっていることを確認し、次にどのような方法で検証しようかを考えた。思いついたのは、重いアプリケーションソフトウェアを実行する際、当該アプリケーションソフトウェアに対し、プロセッサコアを1つだけしか割り当てないようにする。こうすることで、1つのプロセッサコアに大きな負荷を与え、Turbo Modeが実行できるような局面を作りだそうという姑息な狙いである。
対象アプリケーションソフトウェアは、Photoshop CS3。これに対し、Windowsタスクマネージャからプロセスタブ経由でプロセッサの関係をCPU 0のみにする(CPU 1をチェックオフする)ことで、1つのプロセッサコアのみを割り当てる。Photoshop CS3では、20,000 x 20,000のフルカラーの風景写真(72dpi)に対し、10種類のフィルタをランダムに連続実行することとした。
しかし、CPU-Z 1.46の表示は最大でも2.80GHzにとどまった。理由はすぐに明らかになった。いくらPhotoshop CS3を1つのプロセッサコアに割り当てたとしても、もう1つのコアが遊んでいることはなく、Photoshop CS3以外の様々なプロセスが動いているのがWindows Vistaである。つまり、Photoshop CS3が1つのプロセッサコアを半ば強制的に占有状態に追い込んでしまえば、残されたもう1つのコアがアイドル状態になる暇もなく、様々なプロセスで使われることから(そしてPhotoshop CS3の動作をサポートする他ソフトウェアも使っている)、結果的に両方のプロセッサコアは働いていることになり、Turbo Modeとなる余地がないのである。
私がこれまでに、Turbo Mode発動とみなすようなシーンは、思いっきりPCに負荷がかかっている状態ではなく、しばらく何も作業をしていない状態は続いた後、いきなりアプリケーションソフトウェアを起動させたり、あるいは終了させたりという一瞬の間によく見ることができる。なので、Turboといっても、人が座っている姿勢から立ち上がるときに腰とか膝にかかる一瞬の負荷にかかるだけ、といった印象である。
今さらやる気は起きないが、Turbo Modeが有効なものかどうかは、Windows 9x系OSのようなシングルコアプロセッサのみをサポートしている環境で確認するといいだろう。もし、結果がMSCONFIGを使い1つのプロセッサコアのみを有効としたものと変わらないのであれば、Turbo Modeの有効性とは何だろうか? あるいはCPU-Z 1.46ではTurbo Modeを把握できないだけなのだろうか? どうも、こういった結果を眺めると、Nehalemで導入されるというTurbo Modeも宣伝以外の何ものでもないような気がするが……。
コメント