[[PageNavi(NavigationList)]]
=== Windows 7のパフォーマンスは? ===
Windows 7はWindows Vistaに比べシステムのチューニングが進み、より快適に動作すると言われている。この恩恵はソフトウェア開発者でも享受することができるのだろうか? 最後にこの疑問を検証するため、インテル コンパイラー 11.1環境でいくつかのベンチマークテストを行ってみた。
なお、ベンチマークテストに使用した環境は次の'''表3'''のとおりである。
{{{ html
<h6>表3 ベンチマークテストに使用した環境</h6>
<table class="wikitable" border="1">
<tr><th>構成要素</th><th>スペック</th></tr>
<tr><td>CPU</td><td>Core 2 Duo E6550(2.33GHz)</td></tr>
<tr><td>メモリ</td><td>2GB</td></tr>
<tr><td>HDD</td><td>Seagate ST3250310AS(250GB)</td></tr>
<tr><td>OS</td><td>Windows Vista Business、Windows 7 Professional</td></tr>
</table>
}}}
==== コンパイル速度の比較 ====
開発者にとってまず気になるのが、プログラムのコンパイル速度であろう。Windows 7ではOSが軽くなったと言われているが、コンパイル速度の向上などは見られるのだろうか? これを調べるため、インテル コンパイラー11.1環境でソフトウェアをコンパイルする際の時間を測定・比較してみた。
比較にはオープンソースの画像処理ツール「[http://sourceforge.jp/projects/sfnet_imagemagick/ ImageMagick]」を利用し、Windows Vista環境およびWindows 7環境でコンパイルにかかった時間を測定した。なお、ImageMagickのコンパイル方法に関する詳細は「[http://sourceforge.jp/magazine/09/02/25/1244257 インテル コンパイラーでオープンソースソフトウェアをコンパイルしよう]」という記事を参照してほしい。
さて、測定結果は次の'''表4'''のようになった。コンパイル速度に関してはWindows VistaもWindows 7も、ほとんど変わらないようだ。
{{{ html
<h6>表4 ImageMagickのコンパイルにかかった時間比較</h6>
<table class="wikitable" border="1">
<tr><th>OS環境</th><th>コンパイル時間</th></tr>
<tr><td>Windows Vista</td><td>315秒</td></tr>
<tr><td>Windows 7</td><td>316秒</td></tr>
</table>
}}}
==== 作成したプログラムの速度比較 ====
続いて、作成したプログラムの実行速度がWindows VistaとWindows 7で異なるかどうかを検証してみよう。検証に使用したのは、ファイル圧縮/展開ツール「[http://sourceforge.jp/projects/freshmeat_bzip2/ bzip2]」だ。
ここではbzip2を使用し、Windows 7環境およびWindows Vista環境にて、Firefox 3.5.3のソースアーカイブ(約45MB)を展開するのにかかった時間と、展開したファイルを再度圧縮するのにかかった時間を測定した。なお、測定に使用したバイナリはともにWindows 7環境でコンパイルしたもので、コンパイルオプションには「/Ox /Qip」を指定している。
測定結果をまとめたものが'''図25'''だ。Windows 7とWindows Vistaとでの違いは非常に小さい。この結果を見る限り、Windows 7およびWindows Vistaのどちらも、アプリケーションの実行速度についてはあまり差異はないと思われる。
[[Thumb(cd09929098cb36a9a054759603c1ab4b.png, caption=図25 Windows VistaおよびWindows 7でのbzip2の速度比較)]]
==== ディスクアクセスのパフォーマンス ====
最後に、ハードディスクI/Oパフォーマンスについて調べてみよう。Windows 7ではディスクI/Oの最適化が進められていると言われている。そこでオープンソースのハードディスクベンチマークツール「[http://sourceforge.jp/projects/crystaldiskmark/ CrystalDiskMark 2.2]」を使用し、Windows VistaとWindows 7とでI/Oパフォーマンスを比較してみよう('''図26''')。
[[Thumb(b2c969af79f6ece67d19a461d2f944fe.png, caption=図26 CrystalDiskMark 2.2によるベンチマーク)]]
!CrystalDiskMarkは、ハードディスクなどの転送速度を調査するためのツールで、シーケンシャルアクセスおよびランダムアクセスについて、読み出し速度および書き込み速度を調べるものだ。今回はテストサイズとしてデフォルトの「100MB」を選択し、同一のPC上で、Windows VistaとWindows 7とでベンチマークテストを行った。テスト結果は次の'''表5'''である。
{{{ html
<h6>表5 CrystalDiskMark 2.2の実行結果</h6>
<table class="wikitable" border="1">
<tr><th>テスト項目</th><th>Windows Vista</th><th>Windows 7</th></tr>
<tr><td>Sequential Read</td><td>70.1MB/秒</td><td>72.77MB/秒</td></tr>
<tr><td>Sequential Write</td><td>70.09MB/秒</td><td>72.69MB/秒</td></tr>
<tr><td>Random Read 512KB</td><td>24.57MB/秒</td><td>25.14MB/秒</td></tr>
<tr><td>Random Write 512KB</td><td>26.65MB/秒</td><td>27.06MB/秒</td></tr>
<tr><td>Random Read 4KB</td><td>0.29MB/秒</td><td>0.31MB/秒</td></tr>
<tr><td>Random Write 4KB</td><td>0.85MB/秒</td><td>0.85MB/秒</td></tr>
</table>
}}}
この結果を見ると、確かにWindows 7のほうが若干ではあるものの、ディスクアクセスが高速化されているように見える。そのため、大量のI/Oを行うアプリケーションの場合はWindows 7のほうがパフォーマンスが良くなる、という可能性はありそうだ。
=== Windows 7でもインテル コンパイラーは問題なく利用可能、新機能も利用できる ===
ここまで、Windows 7上でのインテル コンパイラーの導入からWindows 7の新機能の利用、そしてパフォーマンス調査を行ってきたが、いかがだっただろうか。コンパイル速度やアプリケーションの実行速度などについてはあまり差は見られなかったものの、OSの起動時間やアプリケーションの体感起動時間は明らかに短縮されており、Windows 7は確かに快適なOSである。また、インテル コンパイラーをWindows 7上で利用する場合も問題は発生せず、Windows SDK for Windows 7を導入すればWindows 7の最新機能を利用したソフトウェアをインテル コンパイラーで開発することも可能だ。今回紹介したジャンプリストやリボンUIなどを活用したいなら、ぜひ試してみると良いだろう。
[[PageNavi(NavigationList)]]