▲2017年に、QualcommのSnapdragonでフル機能のWindows 10が動くようになる
Microsoftは12月8日~12月9日(現地時間)に、中国深セン市内でWindowsハードウェア開発者向けのイベント『WinHEC Shenzhen 2016』を開催。この中で同社が開発してきたデスクトップ版Windows 10のARM版を、2017年に投入すると発表した。
MicrosoftはWindows 8世代、『Windows RT』と呼ばれるARM版Windowsを投入していたが、このWindows RTはデスクトップアプリケーションを動作させることができないなどの制限を持っていた「機能制限版」だった。
これに対して今回発表されたARM版Windows 10では、現在PC用として提供されているWindows 10と同等の機能を持つ「フルバージョン」になる。MicrosoftはQualcommのSoCでこのARM版Windows 10をサポートし、来年の年末商戦に搭載製品を登場させる計画で、OEMメーカーなどに採用を働きかけている。
ARM CPUで動く「PC向けのWindows 10」が登場
現在のコンピュータの仕組みにおいて、プログラムの実行に必要な演算を行うCPUには、命令セットアーキテクチャ(Instruction Set Architecture、略してISAと呼ばれる)というプログラムとCPUがやりとりするときに使う"言語"が決められている。
日本人なら日本語、アメリカ人なら英語を話すように国によって言葉が違うように、CPUのISAもメーカーによって異なっているのだ。
現在のPCやモバイル向けCPUでは、このISAを大きく分けると、x86(IntelとAMDが利用)とARM(スマートフォン向けのSoCベンダ、Apple、QualcommやMediaTekなどが利用)の2つとなる。
プログラマがプログラムの実体を作る(コンパイルする)時には、それぞれのISA向けにプログラムを構成する必要がある。x86向けに作られたプログラムはx86のCPUを搭載したコンピュータでしか動かないし、その逆にARM向けに作られたプログラムはARMのCPUを搭載したコンピュータでしか動かない。
このため、Windows 10系OSはx86版とARM版の2つが用意されているものの、以下のように、製品のタイプ向けに合わせてそれぞれ以下のような組み合わせとなっていた。
ターゲット市場 | デスクトップPC/ノートPC/2-in-1デバイス向け | スマートフォン向け | IoT向け |
OS | Windows 10 | Windows 10 Mobile | Windows 10 IoT |
x86 | ○ | - | ○ |
ARM | **来年追加** | ○ | ○ |
IoT機器向けには両方のCPUに向けたバージョンが用意されていたが、これまでは、いわゆるPC向けにはx86、スマートフォン向けにはARMと、住み分けがなされてきたのである。
従来はPC向けと位置づけられてきたWindows 10にARM向けが追加される――それが今回の発表の意味になる。
Snapdragonのメリットはスリープ時電力低減と
セルラー回線での常時接続対応
しかし、Microsoftはそもそも、なぜARM版Windows 10を導入するのだろうか? Microsoft Windows & Devices担当上級副社長 テリー・マイヤーソン氏は「カスタマーからの要求が多かったからだ。QualcommのSoCには2つのアドバンテージがある。1つはスリープ時の消費電力、そしてもう1つがセルラー回線との親和性で、常時接続が容易に実現できる」と、その背景を説明する。
▲Microsoft Windows & Devices担当上級副社長 テリー・マイヤーソン氏
スリープ時の消費電力とは文字通り、デバイスがスリープモードに入っている時の消費電力のこと。QualcommのSnapdragonを始めとしたARM SoCはIntelのCoreプロセッサなどに比べてこの状態での消費電力が低く、アドバンテージとされている。
実はIntelも、こうした点で対抗できるSoCを用意してきた。それがSurface 3などに搭載されているCherry Trail(開発コードネーム)ことAtom x7/x5シリーズだ。しかし、IntelはPC OSも動くAtomプロセッサは現世代限りと位置づけ、次世代製品の計画はキャンセルしてしまっており、後継製品がない状態になっている。
つまり、仮にMicrosoftがSurface 4なり、Surface 5なりを出したいと思っていたとしても「SoCの選択肢がない」という状態になってしまっていた。今回のARM版Windows 10により、その隙間を埋めることができるというわけだ。
マイヤーソン氏が指摘したもう1つのポイントである「セルラー回線との親和性」とは、QualcommのSnapdragonシリーズではセルラーモデムがSoCに統合されており、より容易にLTE回線を利用可能なデバイスを製造することができる点が挙げられる。
先述したIntelのAtom x7/x5では外付けのセルラーモデムが必要なのに対して、ここは大きなアドバンテージとなる。
また、LTEなどのセルラー回線に接続できるデバイスを製造する場合には、通信キャリアが実施しているIOT(接続互換性検証)をモデムレベルでパスする必要があるが、Qualcommの場合は業界標準のモデムとして世界中の通信キャリアで認証が済んでいるため、他社のモデムに比べてデバイスレベルのIOTをパスすることが容易なこともメリットだ。
ARM版Win 10の課題はソフトウェアの互換性と性能
このように、良いことずくめに見えるARM版Windows 10だが、ではリリースされたら瞬く間にx86版Windows 10を置き換えるかと言えば、そうではない。理由はいくつかあるが、大きな課題は2つ。1つ目はソフトウェアの互換性、2つ目は性能だ。
▲WinHECで行われたARM版Windows 10のデモ
1つ目のソフトウェア互換性では、これまでARM版Windows 10は存在してこなかったので、ARM版のAdobe Creative CloudやMicrosoft Officeといったデスクトップアプリは存在していないことが問題となる。
今後ARM版Windows 10がリリースされれば、ARM向けのバージョンがリリースされる可能性はあるが、スタート時点では存在しない可能性が高い。またそれ以外でも、現状で多くのユーザーが使っているデスクトップアプリケーションは、そのままではARM版Windowsでは実行できない。
この問題に対処すべく、ARM版Windowsには、x86のデスクトップアプリケーションをARM CPUでも実行できるようにするエミュレータが搭載されており、x86の命令をARMに変換しながら実行する仕組みが用意されている。
WinHECの基調講演では、その仕組みを利用してAdobe PhotoshopとMicrosoft Wordを実行する様子を公開したが、当然ながらネイティブで実行する場合に比べると性能は低下する。Creative CloudやOfficeといったアプリは、ユーザーからの速度的な要求が比較的強いだけに、理想を言えばARM版が欲しいところだ。
▲ARM版Windows 10で、x86向けに作られたPhotoshopを実行しているところ
▲ARM版Windows 10で、x86向けに作られたWordを実行しているところ
もう1つの性能に関して言えば、SoC自体の処理性能のみならず、むしろメモリやストレージのサポートが課題になる。Windows 10搭載PCに要求されるメモリとストレージの容量や速度の水準は、スマートフォンやタブレットに比べて高いためだ。
ARM版Windows 10は、ARMの64ビット版命令セットであるARMv8に対応。4GBを越えるメモリ空間をサポートしており、理論上は32GBだろうが、128GBだろうがメモリを実装することができる。ただし、SoC側がそれをサポートしているかどうかは別問題だ。
SoCベンダーも、理論上はサポートしていてもスマートフォンでは必要がないことから、実際は大容量メモリの動作が検証されていない、という場合も少なくない。
SoCベンダー側からすれば、そのあたりを追加で検証する手間やコストなどから、Win 10向けはスマートフォン向けとは異なる特別バージョンとしてリリースする必要があるかもしれない。
▲Qualcomm Snapdragon 820上で動いているARM版Windows 10のデバイスマネージャ表示。試作機ではメモリは4GB搭載されており、64ビット版であることがわかる
ストレージのインターフェースも同様だ。一般的にスマートフォン向けに開発されているSoCは「eMMC」と呼ばれるSDカードから発展したインターフェースを利用している。
このeMMCは、PC向けで一般的に利用されているSATAやNVMeなどと比較すると消費電力が低いというメリットはあるものの、転送速度はSATA/NVMeよりも遅く、かつサポート可能な容量も小さいというデメリットがある。
今回MicrosoftがWinHECでデモしたシステムに搭載されたQualcommの『Snapdragon 821』にしても、ストレージのインターフェイスはeMMCやUFS 2.0といったスマートフォン向けに限られており、大容量のHDDやSSDを利用することができない。この点は、高性能が要求されるPC向けとしては弱点となる。
短期的にx86 CPUを駆逐するストーリーはあり得ないが
低価格WindowsタブレットはARMになるだろう
こうした状況を考えると、ARM版Windowsが登場したからといって、PC市場からx86 CPUが姿を消すというのは、少なくとも短期的には確実にあり得ない。
もちろん、長期的にはARM CPUを搭載したSoCが、大容量メモリや高速なストレージインターフェイスをサポートしてくるので、その時点では話が違ってくる可能性はある。
しかし現時点で考えられるシナリオは、高性能を必要とするデスクトップPCやクラムシェル型ノートPC、ハイエンドの2-in-1デバイスなどは引き続きx86 CPUベースにとどまり、従来はCherry TrailやBay TrailベースのAtomプロセッサが採用されていた低価格なWindowsタブレットに関してはQualcommのSnapdragonに代替されていく――そういう市場の姿だ。
Microsoftのデバイスで言い換えるなら、Surface Studio、Surface Book、Surface Pro 4は引き続きx86 CPUで有り続けるが、Surface 3のような比較的低価格でモバイル性が高いデバイスがARM CPUに置き換わっていくというシナリオである。
マイヤーソン氏は、ARM版Windows 10のリリース時期について「搭載デバイスは2017年の年末商戦に登場し始め、多くのデバイスは2018年の前半になるだろう」と説明している。
同氏はSurfaceシリーズに搭載される可能性に関しては肯定も否定もしなかったが、明確な否定をしなかったところを見ると、仮に来年の年末商戦にSurface 4ないしはSurface 5が登場するのであれば、それは確実にSnapdragonベースの製品になるのではないだろうか。