イベント
[COMPUTEX]「Snapdragon 835」上で動くWindows 10は,どのようにWindowsアプリを動かすのか?
デモの概略は,速報で紹介済みだが,ここではもう少し詳しく,Snapdragon 835で動くWindows 10はどのようなものかを説明してみよう。
Win32アプリケーションはバイナリ変換を行って実行
デモでは,まず「Excel」を使った統計計算や結果のグラフ作成,「Word」で文章作成を行ったうえで,作成したグラフと文章を「PowerPoint」(※いずれもアプリケーションのバージョンは不明)のスライドに貼り付けるといった作業を行い,既存のOfficeアプリケーションがスムーズに動作することを示した。
さらに,Microsoft以外のアプリケーションが動く様子も披露している。デモでは,ファイル圧縮・解凍ソフトである「7-Zip」を公式Webサイトからダウンロードしてインストールし,実行してみせることで,既存のWin32アプリケーションが,ARM環境でもスムーズに動作することも示すというものだ。
こうしたWin32アプリケーションは,x86 CPU用のバイナリをそのまま実行するわけではなく,OS上で「バイナリトランスレーション」を行って,ARMプロセッサ上で実行できるように変換しているという。一度バイナリトランスレーションを行ったソフトは,メインメモリの一部を利用して格納しておくことで,2度目以降の実行では変換プロセスを省略する仕組みが用意されているとのことだ。
Win32アプリケーションであれば,基本的に何でも動作するとのことで,「(マルウェアの)WannaCryも理論上は動作する?」と聞いてみたところ,「動作するとは思うが,確認はしてない」という返事が返ってきた。
現在のところ,ARMプロセッサ用のWindows 10で動作するアプリケーションは,Win32,つまり32bitのx86アプリケーションと,64bitのARMネイティブアプリケーションの2種類である。
64bitのARMネイティブアプリケーションは,「Universal Windows Platform」(UWP,関連記事)に準拠したアプリケーションであれば,MicrosoftがARM用のコンパイラをすでに提供しているので,自動的に生成できるという。一方のWin32は,エミュレーション環境を用意して,その上でバイナリトランスレーションをかけて変換する。
これらに対して,Win64,つまりx86プロセッサの64bitネイティブなプログラムは,今のところ実行できない。ただ,これについては,ARMプロセッサ用Windows 10のアップデートにより,将来的には実行可能にする予定であるそうだ。
話は変わるが,Snapdragon 835に統合されるモデム機能「X16 LTE modem」は,「Gigabit LTE」とも呼ばれる帯域幅の広い無線データ通信機能が特徴である。今回のデモ環境では,実際にこれを利用して,2GBほどのファイルを370Mbps以上の転送速度でダウンロードするデモが披露された。
Snapdragon 835ベースのWindows 10デバイスは,こうした高速な無線データ通信機能を標準搭載したものになるようだ。
4+4のbig.LITTLE構成を利用してバッテリー消費を減らす
Windows 10側に話を戻そう。
Snapdragon 835は,Qualcomm製のCPUコア「Kryo 280」を8基統合したSoCだ。これらのCPUコアは,LITTLE側が4基,big側も4基の2群に分かれた,big.LITTLE構成となっている。ARM版Windows 10は,このbig.LITTLE構成を正しく認識して活用できるようになっており,CPU負荷が減ると,bigコアを2つ休止してbig×2,LITTLE×4の構成で動作するデモも披露された。
Windows 10のデバイスマネージャーを開いてみたが,これらのCPUを正しく認識している様子を確認している。GPUコアの「Adreno 540」も,正しく認識されていた。
これらのほかに,4Kビデオ映像の再生をスムーズに行えることを示すデモも行われている。
ARM版Windows 10でゲームはプレイできるのか?
4Gamerの読者が気になるのは,「Snapdragon 835で動くWindows 10で,PCゲームをプレイできるのか?」であろう。
まず,DirectXの対応に関しては,「DirectX 11は多分サポートしていると思うが,DirectX 12は多分未サポート」という,あやふやな回答しか得られなかった。GPUコアであるAdreno 540自体は,DirectX 12サポートを謳っているので,ドライバソフト次第で対応はできそうである。
とはいえ,リッチなグラフィックスのゲームをプレイするには,SoCの統合GPUでは性能が足りず,単体GPUが必要となってくるだろうし,CPU性能への要求も高くなり,当然ながら消費電力も増大する。そしてQualcommによれば,そうした使い方は,今回のシステムのターゲットではないという。「カジュアルゲームであれば多分(プレイ)可能だが,それ以上は難しいと思う」というのが,現時点の答えであった。
今回のデモに先立って,2枚のマザーボードが示された。1つはデモシステムで使っているSnapdragon 835搭載のマザーボードで,もう1つは,Qualcommがこのシステムの競合に位置づけている,x86ベースのタブレットPC(※おそらく12インチ程度の端末)のマザーボードだ。
Qualcommによれば,両者の性能と機能は「まったく同等」ながら,基板面積は,x86が98.1cm2なのに対して,Snapdragon 835は50.4cm2と,ほぼ半分の面積で済んでいるという。基板の面積が小さくできるということは,それだけバッテリーを大型化したり,機器自体を小さくしたりできるという意味でもある。
ただ,ARM版Windows 10の主眼はAlways Connected PCの実現であり,そのために省電力化とバッテリー容量の大型化を狙った結果,Snapdragon 835ベースのシステムが適切なソリューションになったわけだ。そう考えると,x86ベースのタブレットPCで実行可能なゲーム,つまりWindowsストアで配信されている軽めのゲームやブラウザゲームを超えるものを,快適にプレイするのは難しいだろう。
加えて言えば,Snapdragon 835は,容量4GBのメインメモリを「Package on Package」(PoP)の形で統合している。そのため,CPUやGPUの発熱が多くなると,メモリの動作にも不安が生じる。発熱が控えめになるように,CPUやGPUの動作には縛りをかけているはずで,そうした観点からも,ゲームの動作については,過度な期待はできそうにない。
とはいえ,カジュアルゲーマーにとっては,より長い時間バッテリーだけでゲームをプレイできる可能性もあるわけで,Snapdragon 835搭載PCでゲームがどの程度の性能で動作するのか,ちょっと興味あるところである。
Qualcomm公式blogの関連ポスト(英語)
COMPUTEX TAIPEI 2017取材記事一覧
- 関連タイトル:
Windows 10
- 関連タイトル:
Snapdragon
- この記事のURL: