AVXのサポートはWindows 8から?
![]() | 命令セット面から見たインテルCPUのロードマップ。アーキテクチャーが大きく進化するのはSandy Bridgeから |
|---|
インテルでは、Westmereの次世代CPUとして「Sandy Bridge」を2010年後半にリリースする予定だ。Sandy Bridgeは「AVX」(Advanced Vector Extension)と呼ばれる、新しい命令セットを備える。AVXを大雑把に言ってしまえば、CPUに並列演算用の命令セットを追加するものだ。ベクター演算ユニットが搭載されることで、Sandy Bridgeでは今までのSSE命令より浮動小数点演算を2倍も高速に処理できるという。
![]() | Sandy Bridgeのアーキテクチャー図 |
|---|
ただし、AVXは命令セットを一新しているため、現在のSSEとはまったく互換性がない(SSEが使えなくなるわけではない)。そのためOSも、Sandy BridgeとAVXには新たに対応する必要がある。
なお、読者から指摘があったが、Windows 7は「CPUがAVXをサポートしているかどうか」をチェックするAPIを持っている。しかし、Windows 7自体はAVX命令を使用していない。つまり、Sandy Bridgeを搭載したパソコンに今のWindows 7をインストールしても、AVXの効果でOSのパフォーマンスが上がるわけではない。
![]() | ![]() | |
|---|---|---|
| Sandy Bridgeで追加されるAVX命令セットの特徴。浮動小数点演算のパフォーマンスは2倍以上に | AVXでは浮動小数点演算が、128bitから256bitに拡張される |
そのため、Sandy BridgeとAVXのパフォーマンスを十分に発揮するためには、次世代のWindows(コード名はWindows 8)が必要になる。ただし、Windows 7でもSandy Bridgeを認識するAPIは用意されているため、アプリケーション側で明示的にAVX命令を使用すれば、AVXによる性能向上を引き出せるだろう。
Windows 7のAVX対応について、筆者の見解を加筆いたしました。(2009年10月19日)
32nmプロセスで製造されるSandy Bridgeは、2010年末頃に出荷される予定だ。当初はハイエンドCPUとして登場するだろう。多くのユーザーが使用するメインストリーム以下の市場へ投入するには、さらに先の22nmプロセス世代のCPUが必要になる。22nmプロセスのCPUは2011年末頃になるため、実際に普及するのは2012年頃になるだろう。
いくつかの話では、Windows 8のリリースは2012年をターゲットにしているようだ。そのためWindows 8では、本格的にAVXがサポートされるだろう。インテルのリリーススケジュールや、マイクロソフトのOSロードマップなど、未確定要素が多いため、今後どうなっていくかはわからない。しかし、AVXで高い処理性能を持つパソコンは、2012年以降にならないと手に入らないと思われる。
もちろん、Sandy BridgeでWindows 7が動作しないということはないだろう。AVXユニットは下位互換性を持っていて、SSE命令も処理できる。ただし、AVXによるSSE命令の処理が、どのくらいのパフォーマンスで動作するかはわからない。もしかすると、WestmereでのSSE命令よりも遅くなる可能性もある。
Sandy Bridge以降のCPUは、システムのパフォーマンスを上げるために、ソフトウェア側の対応が重要になる。そうした意味でも、単にCPUだけ変えれば、パソコンの性能が向上するという時代は終わりつつあるのかもしれない。
この連載の記事
- 第48回 5秒で起動するSplashtop OSを自作パソコンで試す
- 第47回 ベンチで検証 Internet Explorer 9 RCの互換性と性能
- 第46回 正式版の直前となるInternet Explorer 9 RC版が登場
- 第45回 Silverlightをさらに進化させる「Silverlight 5」
- 第44回 「Windows on ARM」が持つ意味と課題は何か?
- 第43回 GPUを利用できる仮想化ソフト XenClient 実践編
- 第42回 複数のWindowsを使い分ける仮想化ソフト XenClient
- 第41回 3秒で起動しWindowsと共存するOS「Splashtop OS」
- 第40回 最新版「PP7」に見るIE9の性能と互換性の高さ
- 第39回 独自の検証と改良でWindows 7の性能向上に挑むレノボ
- この連載の一覧へ


















