なんとなく綴ってみた

アクセスカウンタ

zoom RSS Snapdragon820で動くWindows10 Enterpriseで先を見通すのは”難しい”

<<   作成日時 : 2016/12/09 10:57   >>

ブログ気持玉 0 / トラックバック 0 / コメント 1

WinHEC Shenzhen 2016でのWindows10 ARM発表は噂を現実のものとして認識させ、ある程度のサプライズを与えるには効果があったと思われる。しかし、発表後の咀嚼記事は思ったほど多くない。むしろ、これから素晴らしい何かが展開しそうという予想もなく、少し困惑や不透明感を示しつつ、次の情報や周りの状況を静観している記事書きが多いようだ。まあ、80年代からのWindowsの歴史、WindowsNTの歴史を知っていれば、こうなるのも当然だろう。果たして、今こそARMなWindowsが求められていると言えるのか?ということだ。RTの時だったなら違っただろうが・・・今の段階では様子見しか出来ないし、もし対称ハードなどの線引きがなければ、RTの二の舞になる確率の方が高い。

http://pc.watch.impress.co.jp/docs/news/1034101.html
https://blogs.microsoft.com/firehose/2016/12/07/microsoft-announces-new-innovation-opportunities-in-mixed-reality-gaming-and-cellular-pcs/


映像を見る限り、SoCにQualcomm Snapdragon820が搭載されている。Snapdragon820の仕様は、次のようになるCPU、Kryo×4、RAM4GB、GPU Adreno530、eMMC5.1またはUFS2.0フラッシュデバイス。まあ、DirectX11準拠のGPUも搭載しており、単純計算は出来ないがALU/FPU性能は、Intel Atom Zシリーズより上とされる。ただ、ユニットコストもAtom Zより実は高いか同じ程度なので、ARMになるからといってすぐすぐ安くなるかどうかは微妙な代物である。

OSは、仮想化機能オフ(ARM Virtualization disable)という設定で動いているようだ。 ストレージデバイスがeMMC5.1なのかUSF2.0なのかによってアプリケーション起動の速度は変わるため、これより下位のSoCでこのデモ機並みにさくさく動くかはまだ分からない。


<x86ソフトウェアはどう動くのか・・・保守はどうなるかも不明>

少なくともVTは使っておらずネイティブにバイナリ変換を掛けているのは確かなようだ。この手の処理では若干オーバーヘッドが出るが、WOW64やAppFixなどでも既に同様の技術は使っている。ハードウェア、ソフトウェアエミュレーターはItanium版が出ていた頃(2010年頃までのServer、2005年までのデスクトップ)まではずっとマルチプラットフォーム対応のWindowsNT系があったことを考えると、特別な感慨は私自身にはない。

今回は何年頑張るのかな?途中でどっちかを見捨てたりしないのかな?という方が気になる。

ちなみに、binary Translationを使っているとすれば、数年以上前から噂だけはあったWindows On ARM(WOA)だろう。まだ名称は確かではないが・・・(ここでは仮称としてWOAとする。)
システムサービス上にx86コードをARMに変換する機能を備えている訳だが、実行環境である仮想マシンを立ち上げる際に、x86コードをARM解釈が可能なものに置き換え、それをARM命令に最低化されたAPIにながせば、実行できる。
オーバーヘッドはほとんどないはずだが、一方でWindows上に存在しないAPIやローレベル自作コンポーネント(抽象化層を介さない関数や定義体を使ったプログラム群)などは、動かない。また、抽象化がないローレベルアクセス(直接Shellを介してCPUに実行)を求める(Windows10では推奨されていない、通常は実行できない)プログラムは、アプリケーションを開発する事業者がARM対応に最適化しない限り絶対に動かない。

まあ、バイナリがどこまで用意されるかは、マイクロソフト社次第だ。
Win32で動作するゲームなどで古いものは、Windows10のx86版では動いても、ARMでは動かないものが出る可能性はある。

もしQualcommプロセッサしか対応出来ないなら、Transmeta方式でCMSのような仕組みをファームウェアやeMMCに備えている可能性もあるが、この場合はBinary Translastionとは言い難い。


今回はPhotoshopCCとWordなどのソフトウェアがデスクトップ版として動作したが、この2つはオフィス、クリエイティブアプリケーションとして代表的なものである。一方でゲームはUWPのWorld of Tanks Blitzだろう。ここから見えるのは、ある程度最適化が行われていないとARM上でx86は動かないか、動くけど若干遅い可能性がある。3Dゲーム等は特にその傾向があるので、PhotoshopCCを見て素晴らしいとは言えないのである。

もしも、バイナリ変換のオーバーヘッドが大きなものだったり、あまり多くのデスクトップコンテンツを移植できないような環境だと、Windows XP 64-bit Edition for Itanium systems(Windows XP 64-bit Itanium Edition)と同じ結末になるだろう。これはNTで何度となく繰り返された悪夢だ。売れないから保守も面倒だし、打ち切りサヨナラ・・・である。One Coreプロジェクトでコスト削減が旨く機能するのはもちろんだが、売れなければたぶんまた打ち切りだろう。

まあ、Androidでもx86は期待まで普及せずにほぼ終熄に向かっているように、ある程度プロセッサシェアが決まったOS市場では、別のプラットフォームが改めてシェアを取るは難しい。どうしても、バイナリー互換には仮想マシンによるエミュレーターが必要であり、それを使ったとしてもまともに動作しない(一部に機能制限が掛かる)アプリケーションはある程度出てくるからだ。それを埋めるにはOS側の変換バイナリを充実させるか、またはアプリケーション側がARMにすり寄るしかない。

そうなるから、そのOS上で最も売れているプラットフォームが優先され残るのである。それを過去に証明したのは、実はマイクロソフトである。マイクロソフトはそれを崩す秘策があるのかどうかが重要になる。


<UWPの存在意義もどことなく不安に>

個人的に願っていたのは、スマートフォンのタイルUI(Metro UI)環境で、Windows10のWin32/64アプリケーションが動くことだった。最初からそういう形で、プレゼンをしたなら、最後のチャンスに出たと思っただろうが、デスクトップを先行したことで、Windows Mobileの意味があるのか?また、UWPは本当に普及するのか?などの面で不透明さが増してくる。

前者なら実は便利だが不便だと言うことも分かってくる。なぜなら、デスクトップソフトウェアは、モバイルで動かすとタッチもままならないからだ。動くのは動くが、実用性では動く程度に留まる訳だ。それでも、欲する人はいて、その欲する人のために、UWP版を開発する業者が出てくるという可能性があるわけだし、そこをマイクロソフト社のUI技術や拡大技術、入力補助技術で支えることで、Windowsは出来るとユーザーに伝えることが出来る。

そして、最終的にはUWPにはないソフトウェアでも使えるだけで便利なソフトなら、モバイルに最適化したUIの方がもっと良いだろうと、UWPを推進するのに役立つ・・・しかし、デスクトップPC前提だと、そもそもUWPの価値が減っていく。デスクトップOSそのままの移植であっても、少なくともUIはスマホと同じ環境になるような設計の方が面白かっただろうと思う。

ここに過去のマ社の亡霊がまた出てくる。
当初はAndroidアプリケーションもiOSアプリケーションもコンバートする技術も開発していたため、Windows10はこれからiOSやAndroidのアプリを簡単に変換できWindows Mobileが受け皿になるとも言われていたが、それらの計画は後退、撤退している。その結果、Windows10 MobileもPhone時代の1割シェアからさらに落としている。今回の対応でUWPも微妙な位置づけになったのではと不安になる人もいるだろう。


<SurfaceRTやWindows RTはアップグレード出来るのか?>

ついでに、Windows RTを搭載したSurface RTというパソコンが昔あったが、今回のこれで10になるかもという話もある。確かに、そうなると面白いが・・・出来たとしても微妙だろう。Surface RTが搭載しているTegra3はCortex-A9×4+companionというCPU構成で今のWindows10 ARMが動いているSnapdragonと凡そ4.5倍以上の差がある。

しかも、Cortex-A9はアーキテクチャが同じARMでもARMv7-Aで32bit、Snapdragon 820はARMv8-Acで64bitという違いまである。メモリは2GBと4GBで違い、eMMC(ストレージ)の接続は100MB/s前後のTegra3に対して、Snapdragon 820は最大400MB/s(eMMC5.1接続時)以上1GB/s超えも可能なUSF2.0接続に対応する。
さくさく動かすのはどう考えても難しい。

パソコンのプロセッサ(x86)は数年たってもCPUレベルでは2倍も性能は上がっていない。コア数を増やせばその数に応じて上がるが、1つのコアが持つ性能は2010年比で4割から6割ぐらいが平均的な向上率である。
ARM系の上位プロセッサは僅か数年で、数倍パフォーマンスが上がった。そのため、保守の終了を宣言したRTに対して、救済を掛ける可能性は低いだろう。まあ、ゼロではないが、難しい。

だから、シェアを取るには10でこれから出るWOA対応のARMハードを売る必要があるわけだ。RTの人がそれを買いたいと思うかというと、今の発表段階では・・・人柱にはならないだろう。


<冷静に考えると難しい位置づけ>


ARMには省電力や小型、ライセンスの自由度という強みがある。それは、これまでのPCでは出来なかったWindows IoTデバイスへのフル版Windowsの実装という可能性だ。これが上手くいけば、より様々な形のフル機能PCが作られることになるだろう。また、Snapdragon820相当のプロセッサ環境であれだけ動くなら、あと数年でARM系のPC出荷がx86を上回る可能性もある。そういう点では、評価によってx86からの離脱というのも最終的に視野に入るだろう。競争が少ないx86よりARMの方が性能が今後も上がるなら魅力はあるかもしれない。ここが熱狂できる部分だろうが・・・

冷静に考えてみると、彼らが目指しているのは単純にWindows10をARMで動かすことで、ハードの種類が増えることと、バッテリーの持ちを伸ばすことぐらいしかない。

それで評価を得るにはWin32/64ソフトウェアがどれだけ安定して動くのかを、もう少しはっきりさせなければならない。もしも、Itaniumのようにパフォーマンスも最適化しないと快適に動かないソフトが多いなど、問題があれば、過去の二の舞どころか三の舞、四の舞になる。これは、何度となく起きた問題だ。

これに、ARM系を使うモバイルOS、AndroidやiOSとデスクトップOSがどう差別化して戦うのかというのも出てくる。

本当なら、モバイルも持つマイクロソフトは、UWPやモダンアプリでモバイルやxboxの環境をデスクトップに輸入したことを踏まえて、今度はモバイルUIにデスクトップアプリを落とす方が、分かり易いアプローチだったのだが、そうしなかったことが、いろいろな面で重複を起こしてしまい視界不良に繋がっているのだ。これがPhoneベースやIoTベースでの展開が優先されるような話なら、そちらはアプリの少なさに悩んでいた訳で、少々互換性が低くてもある程度喜ばれると誰もが見ただろうに・・・。今回は、OS会社としてソフトウェア会社として将来にわたって目指すもの(売りたいもの)が何かが見えない。

確かなことは、PCとして出すからにはWOAによる互換性が全てであるということだ。
しかし、WOAの互換性がきわめて高ければ、UWPへの移行価値が若干落ちるという皮肉な状況が起きる。その代わりWindowsPCの幅は広がる。逆に、WOAの互換性が低ければ、思ったようにARM製品は売れないだろう。最終的に用途限定を掛けてARMはほぼ撤退もあり得るということ。ARMが上手くいけばx86が逆に押され、Power系からIntelにMacが移ったような状況になる可能性もゼロではない。もちろん、両方がうまく行く可能性もあるが、それには必ず棲み分けのルールがいる。

マイクロソフトが、マルチプラットフォームOSを展開でき、その上で同じソフトウェアが動くという仕組みが作れることは、80年代〜2000年代前半を知っている人なら、理解しているだろう。今更の話である。しかし、今x86とARMを両対応させて最後にどこに向かうつもりなのかというのは、今の段階ではむしろ分かり難くなっている訳だ。


<成長性と真意が正確に分かるのは2017年>

もしマイクロソフトがWOAに対する勝算があり、成長間違いなしとみているなら、何か面白い商品(Surfaceを冠する特殊なハードウェア)がコンセプトとして2017年に登場すると思われる。また、提携企業がいくつかあるのだろう。場合によっては、VAIO事業でPCから撤退したソニーモバイルなども、ARMつながりで再参入してくる可能性もある。

ただし、それまでに、互換レベルや、オーバヘッドの懸念が明かされることは必要だ。それが分からないと、RTに似たような状況になる可能性はゼロではなくむしろ、ここまま下手に多くのARM系が登場したら混沌とするだろう。

マイクロソフトはいつも年の終わり付近にサプライズを用意し、次の年に期待させるが・・・OS事業に関しては、Windows10が登場して以来、マイクロソフト社が予想した通りの成果は出ていない。

むしろ、ハードウェア事業の方がSurface系でインパクトを示している。今回のWOAに関しても、サプライズは成し遂げたが、この先ARMがx86との差別化をどう進めるのか?互換性用途としてWOAがどれだけ使えるのか?そもそも過去のプラットフォームのように撤退する懸念はないのか?などがこれから示される必要がある。

個人的には、何とも難しい(分かり難い)ものをサプライズに出してきたなと感じる。
正直、Windows関連のサプライズでは、これまで私自身から見れば善し悪しが見えやすかった。しかし、善し悪しが、単純にどっちとも言えずに、どのように考えて書けば良いかこれほど悩むものは初めてである。噂通りと言えば確かにそうだが・・・発表の流れなどを見ると、あまりにもPCだったのでそれに唖然としたという状況だった。UIを変えたPhoneなども出してくるのか?それとも、PCだけをそうするのか?何か条件差別化を図るのか?両方最終的にARMにするつもりか?

この4つの違いは、必ずWindowsアプリケーションに対する開発姿勢にも影響してくるだけに、やはりこのWindowsに対する評価は、さらにいくつかのカンファレンスでもっと詳細な目的や用途、技術互換情報が出てこないことには、決められない。

−ななしさん−

コメントありがとうございます。確かに言われてみると変です。内容は訂正しました。

一応、私の中で自作DLLというのは、外部/内部DLLとの区別のつもりで書いていました。内部はOS内で完結しているので、あれですけど。プラットフォームが変わったときに、中途半端な障害が起きる場合の大半が、DLL不足や例外定義による不具合ですから・・・。(昔はOLEも多かった)
外部の中でも、HALやKernelコードに依存しないハードウェアドライバ層に近いコード層を扱うものを昔から私は自作と称していました。尚、たいていの作者は、プラットフォームが変わっても、動くと思っています。Layerの互換性がとれずにエラーが出るまで、それがLayer範囲外(既に廃止または廃止間近だったコード設計)だと思っていないのも特徴です。本人はそのつもりがなくShell範囲から外れた関数を使い続けているケースも多いですから、これを私は自作(古いコード設計または、設計思想そのものがオリジナルだがプラットフォームが同じお陰で動く関数を構築すること)と称していたのです。

PGやSEからすれば内部も外部も全部誰かの自作ですから。その中でも特別深い層にまで踏み込んだものや、90年代などから比べると、2000年代に入って抽象化が進みましたから、深いレベルで動作する古いコンポーネント(DLLに限らない)を自作と私は称していました。

今後は改めます。ありがとうございました。






UX303UB-6200【税込】 エイスース 13.3型ノートパソコン ASUS ZenBook UX303UB(スモーキーブラウン) [UX303UB6200]【返品種別A】【送料無料】【RCP】
Joshin web 家電とPCの大型専門店
在庫状況:最短24時間以内出荷□「返品種別」について詳しくはこちら□2016年02月 発売メーカー保


楽天市場 by UX303UB-6200【税込】 エイスース 13.3型ノートパソコン ASUS ZenBook UX303UB(スモーキーブラウン) [UX303UB6200]【返品種別A】【送料無料】【RCP】 の詳しい情報を見る / ウェブリブログ商品ポータル



テーマ

関連テーマ 一覧


月別リンク

ブログ気持玉

クリックして気持ちを伝えよう!
ログインしてクリックすれば、自分のブログへのリンクが付きます。
→ログインへ

トラックバック(0件)

タイトル (本文) ブログ名/日時

トラックバック用URL help


自分のブログにトラックバック記事作成(会員用) help

タイトル
本 文

コメント(1件)

内 容 ニックネーム/日時
自作DLLなどは動かない、ってPhotoshopが単一EXEファイルだとでも思ってんの?
 
2016/12/18 17:44

コメントする help

ニックネーム
本 文
Snapdragon820で動くWindows10 Enterpriseで先を見通すのは”難しい” なんとなく綴ってみた/BIGLOBEウェブリブログ
文字サイズ:       閉じる