なんとなく綴ってみた

アクセスカウンタ

zoom RSS iPhone性能の秘密は、ハードよりソフトにあるが、ハードで示さなければいけない難しさ。

<<   作成日時 : 2017/10/25 13:16   >>

かわいい ブログ気持玉 4 / トラックバック 0 / コメント 0

最近Apple A系のプロセッサを調べているが、全く進まない。AppleはCPUの仕様を公開していないため、探しても見つからないからだ。ただ、過去を紐解くと、CPUそのものの性能をAndroidなどのパフォーマンスで図ったと仮定したベンチマークで示すと、高くはないことは何となく見えてきた。これは、バッテリーの電力効率から考えても大方間違いないだろう。

何故なら、バッテリ容量はAndroidの上位機の2/3程度なのにそれ以上に長持ちするからだ。iOSの管理がいくら優れていても、CPUそのものもある程度発熱が大きくなるような高度な処理を控えるように回路設計をしないとこうはいかない。だから、CPUの仕様を公開していないのだなと分かるようになった。これは、GPUを独自開発し始めたことにも言えるだろう。まあ、比較的電力を食わない手法で、iOS専用命令なども組み込んで底上げしている可能性もある。

Appleが搭載してきたPowerVR系はGPUの純粋性能(FP32)では、Adrenoのx30/x40系に劣っていたが、ベンチマークではそれが見事に覆されてきた。それが示すのは、自社開発のOSに徹底的にGPUやCPUを最適化し無駄をそぎ落としてきたことが覗える。これは、以前32bitと64bitの違いでも書いたがAppleの強みである。その代わり、この性能差を維持し続けるには、一定の間隔で古いアプリケーションの排除を続けなければいけない。
何故ならOSのソースが肥大化すれば、レガシーコードとの分岐で性能を食われてしまうからだ。

まあ、それでもAppleが強いのはライバルのメジャー更新がそれ以下だからだろう。特に救いなのはGoogle Androidのメジャー保守が最低18ヶ月であり、標準24ヶ月(2回のメジャー更新)が原則だからだ。Appleの3年〜4年より短いのが救いとなっている。これが、Windows並の5年フェーズになれば、Appleも多少は痛むかもしれない。(ちなみに、Android本体のHotfixはもう少し長い場合が多い)


<基盤技術>

しかし、Appleがジョブズ時代に作り上げた基盤の高さには驚く。最近は、情報漏洩も多くiPhone情報など先にダダ漏れになるが、あれがなければもう少しぐらいは評価も高いだろう。まあ、今回はSamsungなど他のメーカーが先行している技術を採り入れている面も多いため、ちょっと難しかったかもしれないが、それでも地盤は固い。

これには、iPodから培ってきた軽量OSとハードの一体化が影響しているのは間違いない。
Apple Computer(現Apple.Inc)という会社は、元々はコンピュータメーカーである。グラフィカルなUIを採り入れたMacintosh OSを開発したことで、一気に市場に普及したが、その後他社(マイクロソフト等)が、それを真似、しかもオープンなプラットフォームで普及させたことでハードとセットで販売していたAppleは苦戦を強いられた。

90年台終わりには、マイクロソフトが買収かとも噂され、Apple以外のMAC互換機まで登場した。
それを変えたのが、創業者の一人スティーブ・ジョブズだった。彼はOSのオープン化を止めて、NeXTSTEPを主軸にPC向けOSを刷新した。今も続くiOS/macOS Xの基盤はこれがなければ始まることもなく終わっていたかもしれない。

また、AppleがNeXTを食っていなければ、ジョブズは別の会社とこれをiPhoneっぽい品に仕立てたかもしれない。

どちらにしても、今のiPhoneはNeXTがなければ生まれていないだろうし、これほど熱狂的なユーザーがいるものにはならなかったと考えられる。


では、何故このOSは他のOSよりアプリケーションの実効性能が高いのか?そして電力効率が良いのか?
この要点は、ARM Power Modeの拡張最適化と、プロセッサの最適化にあると考えられる。Appleが情報公開できない理由は、きっとここにあるのだろう。逆に言えば、プロセッサとして凄い凄いと持て囃しているが、性能で大したことがあるかというと、予想以上にシンプルであると見た方良いだろう。

同じプロセスルールで、1.4倍以上の性能を発揮し、バッテリは2/3以下になるという理論は通じ難いからだ。Apple強みは物理性能の低さは隠蔽してその一方で論理性能(ソフトウェアの実行効率)を徹底してあげる方法にOSメーカーとして回帰したものだと思われる。一時期、オープン化に舵を切っていたメーカーとは思えない発想だが、それがスティーブ・ジョブズが最終的に目指した勝利の方程式だった訳だ。

CPUやGPUを独自にしてCPUやGPUの型番から得られる情報を減らし、開発情報を隠蔽し、ファームウェアとなるOSが、アプリケーションをより効率的に上手に実行できさえすれば、それだけでブランドイメージが上がる。これが、Appleの強さだろう。既に、CPUやGPUを語る理由もなく、皆が神様のように見てくれる。これは、故スティーブ・ジョブズ氏がこれまでのマイクロソフトなどの動きを見て学んだことの体現だったのかもしれない。


ちなみに、x86(Core i7)より速いなどという記事も世間のBlogではあるが、あれはまんまと、その術中に填まったレビューだったりする。x86はARM系とはことなり、汎用命令のバリエーションが圧倒的に多い。そのため、同じ結果をもたらすプログラミングの手法がいくつもある。凄く端的に書くが、例えば、4を求める計算、iOS向けのARMなら、2+2=4などの足し算しかできないとしよう、x86なら1×4=4、2+2=4、8÷2=4などが出来るようなものだ。
(実際には浮動小数点演算と整数演算は殆どのプロセッサがサポートするが、ここでは例として書いている)

このバリエーションの弱さを埋めて効率的にするのが、OSの役割だ。最初から2+2しか出来ないなら、先の2を出すには、予め1+1を作って次は2+2になるようにコードを書く必要がある。こうすると2ステップになるが、他でこの前コードを使っているならその結果を保持し、代入すれば時間を節約できる。

それに対して、x86のような大規模命令系は、いつでもあらゆる命令が使える訳で、似たような処理を繰り返し行えるという特徴がある。だから、命令する方法もそれに合わせて多様化する。本来なら一直線の目標地点に、回り道するようなことも出来る訳だ。そして、総じて大規模命令を使うCPUではそうなりやすい。

何より、オープン化されていたり、他のハードにも最適化されると、どうしてもそれぞれの差を吸収するため、コードのチェックや迂回が多くなる。これが重なり大きな差を生み出す。


要は、設計が甘いアプリケーションでも迂回しつつも処理する大規模と、ただ必要なものを小さく纏め、可能な限り直線で進み、それ以上を求めると処理出来ないか、劇的に遅くなる小規模命令アーキテクチャでは、出来ることの幅が違うのだ。実はアーキテクチャの異なるCPUとOSではいくら同じメーカーのベンチマークを使っても、それを厳密に図ることが出来ない。

もしやるなら、CPU命令を直接ロードするネイティブOS並のチェッカーが必要になる。
そして、どんな命令が速く実行でき出来ないのかを、全て書き出した時に、その差が見えてくるのだ。

そのため、一部に噂はされてきたが、AppleがPC用でARM製品を出すかというと微妙だ。

私が開発者ならまだ出さないだろう。理由は単純で、PCでは強みとなる省電力という側面が無くなり、命令のバリエーションが強みを持つからだ。IBM Powerを捨てたのはその側面も大きかったはずで、ARMがもっと大規模化するならその可能性もあるだろうが……今更ARM PCが割に合うほど売れるかというと、AppleはmacOSもオリジナルで最適化しているので微妙だ。むしろ、旧来のPCという立場なら、x86でインパクトのある多コア製品を出すのが得策だと思っているはずだ。よほど、他の魅力があればARMに変わるかもしれないが……。


皮肉にもこのところOSメーカーとしてはぶれの激しい、マイクロソフト社とは真逆なのである。


<Apple、iPhoneがこれからも持つ者と、持ちたいもの>

これから先、iPhone、いやAppleが優れた技術を開発し続けるかというと、なかなか難しいだろう。繁栄の先には必ず一定の減速や衰退があるものだ。ただ、ジョブズが作ったOS基板であるNeXTSTEPはMacOS X(現macOS)やiOS、Watch OSとしてその開発者が予想した以上の成功をAppleに与えたのは間違いないだろう。

そして、それがCPUやGPU、メモリーなどの性能を予想以上に引き上げる効果を出している辺りが、この会社が唯一にして最高の武器になっているように見える。

一方で、それによって失っている面もある。それは、ハードバリエーションだ。実は、ジョブズはとにかく内部ハードを新設するようなバリエーションを少なく抑え、色柄などのバリエーションを豊富にすることを前提に製品を販売するケースが多かった。iMacやiPodなどがそれだ。これは、iPhoneでも言える。CPU周波数などは変わることがあっても、ハードウェアの基本は全て同じにしていることが多かった。

それは、ハードウェアバリエーションが増えるほど、カーネルコードやシステムサービスに重複する無駄なドライバコードや、迂回コードが必要になるからだ。スマホの大型化にジョブズが反対していたのは、当初そこだったのかもしれない。あの当時は性能もGPUやCPU性能も低かったし、OS重視のAppleのハードには特に苦しかったはずだ。


それが、これから徐々に解き放たれていく。その本格的な第一弾がiPhone X(テン)になると考えられる。iPhone7世代からカメラなどに変化はあったが、あの辺りはドライバファームウェアで埋めることも出来たはずだ。
今回は、iPhone8に対してファームだけでは埋められない程度の差が生じている。これは、Appleがバリエーションに本格的に取り組み始めたことを意味する。

即ち、これまでiPhoneが持ちたくても持てなかったものに、これから本格的に挑戦していくということである。
これが成功するかどうかは、一種の冒険だろう。ジョブズの基板から流れを少しずつ変えていくということである。まあ、これをやらずに同じ製品を出し続けるより、出して成否を確認した方がよい。成功するにしても失敗するにしても、それをやらない限り次の成功はないのだから。これも、Appleの強さを生み出す基盤だろう。


<OS中心故の孤高と、孤高故のジレンマ>

ハードから視点を写すと、一見全体が変わっていくように見えるが、実はApple製品はどの製品も、まずはOSが開発されそれにハードが乗っかる形になっている。これが、Appleの勝利の方程式を作ったと言えそうだ。

一方で、それが今、Appleというメーカーにとって孤高の戦いを強いられていることも見えてくる。それは、例えばCPUが凄いというイメージだったり、GPUが素晴らしい、バッテリーが長持ちというイメージにある。これらはOSが全て達成しているとしたら、イメージは全く変わるはずだ。安いプロセッサーに……という話になるかは別として、OSに7、ハードに3ぐらいの投資をしているとしたら、何故もっとここにと思う人もいるだろう。

そう思われないように、洗練されたOSがそれを支えるならどうするか?それは、情報を必要以上に出さないことになる。要は、唯一の製品を、アプリケーションレベルでの実行結果と分解レポート以外、秘密のベールに包むのだ。

すると他社も参入できず、何がキーなのかは見えにくくなる。それを発表会では部品部品の素晴らしさに置き換えると、評価はより高くなる。これが、Appleのパターンだったとしたら、実はハードウェア機能がAndroidより劣っていた理由も見えてくる。

何せ、一社が持つ開発リソースには限界がある。その上OSの設計もハードウェアリソースを考えるとある程度シビアになる。即ち、一気に変化を急ぐ訳にもいかないのだ。先にも書いたようにすぐに持ちたい機能でも、すぐに持てないのだ。それが孤高で優れたブランドイメージになる。

そして、これからもこの孤高を維持するには、このOSに機能や能力を追加し続けるか?または、このOSを使う全く新しい魅力的なデバイスを生み出す必要がある。

何より、孤高というのは、高品質で他より高いイメージがある訳で、下手を打てば一気に失墜するリスクも孕む。これは、その昔日本の家電メーカーがやっていた手法でもある。他社と違う機能、我が社のみという奴だ。しかし、オープンな開発力では世界中から新技術が出てくるため、イノベーションを続けるには、技術者がよほど継続的に新提案をして最先端を冴えた目や腕で生み出していかなければならない。

これが、今、Appleにとっての課題になっているように見える。
本当に救いなのは、まだiPhoneがOSとしてAndroidを十分に上回っていることだ。今、喫緊の問題なのは、価格面ぐらいだろう。


<Appleはこの先もこれを続けられるのか?>

この先Appleはこのソフトウェアの有利を維持できるかは分からない。むしろ、少し怪しいのかもしれないと私は思っている。理由は、このところバリエーション戦略を広げつつあるからだ。SEとPhone、Plus、Xと広げるハードのバリエーションが、さらに増えていくならOSの強みが徐々に沈む可能性があるからだ。

その上、ハードスペックの多角化は、価格や在庫管理の面で影響を与える。実は売上高を増やすには、バリエーションを増やすのが良いが、確実な純利益を求めるなら、一番売れる型番に機種を絞った方がよいということだ。

そして、これが最も重要だが、実は成長が鈍化するとメーカーは、売上げ維持のために、機種を増やす傾向があるというのも特徴だ。今回Appleはそれをやった。しかも、発表日が同じにもかかわらず発売日がばらける形で……。方程式が徐々にズレ始めているように見える。

同じ事をずっと続けることは出来ず、変化はしていくだろうし、何より変化は必ず必要である。ただ、孤高のAppleが以前変化したとき、そして最初に評価されたときには、カリスマがいて、まだ今のところ次が生まれていない。


もし、厳しい状況になりそうならAppleも、オープン化を始めるのかもしれない。実際に、AmazonはAlexaの技術を一般に提供している。イノベーションの難しいところは、一社で出来ることには限界があるということだ。確かに、カリスマがいるとそれだけで、そのカリスマがいる間は乗りきれる場合もあるが、永遠には続かないだろう。

何より、Appleの場合、ソフトよりハードが今凄いように見えている辺りが、イノベーションの起点がハードの開発になっている可能性が高い。そうなると、ソフト視点から発展したであろうiPodやiPhoneのようなハードが生み出される可能性は低いのかもしれない。







ロレックス ROLEX サブマリーナ デイト 116610LN 【新品】 時計 メンズ
ジャックロード 【腕時計専門店】
[問合せ用商品ID:rx516] &nbsp;PRODUCT&nbsp;&n


楽天市場 by ロレックス ROLEX サブマリーナ デイト 116610LN 【新品】 時計 メンズ の詳しい情報を見る / ウェブリブログ商品ポータル



テーマ

関連テーマ 一覧


月別リンク

ブログ気持玉

クリックして気持ちを伝えよう!
ログインしてクリックすれば、自分のブログへのリンクが付きます。
→ログインへ
気持玉数 : 4
かわいい かわいい
なるほど(納得、参考になった、ヘー)
ナイス

トラックバック(0件)

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

トラックバック用URL help


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

タイトル
本 文

コメント(0件)

内 容 ニックネーム/日時

コメントする help

ニックネーム
本 文
iPhone性能の秘密は、ハードよりソフトにあるが、ハードで示さなければいけない難しさ。 なんとなく綴ってみた/BIGLOBEウェブリブログ
文字サイズ:       閉じる