IMG_0105

すでに新興国では普及が進む「Intel Architecture(x86)Android」とは?

  • このエントリーをはてなブックマークに追加

by [2014年1月24日]

去る1月15日に行なわれた日本Androidの会2014年1月の定例会で「IA(x86)Androidの概要とIAディベロッパー部の紹介」としてIntel Architecture、つまりIntelのi386に始まる、いわゆるx86/x64系の命令セットに対応したCPUを搭載したマシン向けのAndroidの概要および現状と、日本Androidの会でこの系統のAndroidを取り扱うIAディベロッパー部の紹介が行われました。

そこで今回は、徐々に搭載機種が増えているものの認知度の低いIA AndroidやAndroidユーザーにはなじみの薄いIAそのものについて補足をしつつ、この講演の概要をお伝えしましょう。

講演者:日本Androidの会 今村博宣氏
 昨年末で会社を辞めて自宅警備員だそうです。ウェアラブル機器のコンサルティングを行っておられます。

IA Androidは徐々に浸透しつつある

冒頭で今村氏は、IA Androidについて、一昨年くらいから結構動きがあったのがようやくメジャーになり始めたのではないか、と指摘しました。

日本Androidの会でもCPUの開発元であるIntelがスポンサーとして積極的に活動していることもあって、昨年IAディベロッパー部、略してIAデ部を発足したそうです。

続いて、IA Android搭載スマートフォンが昨年1年間で20カ国以上の地域で10種類発売されたことが紹介され、今村氏は最早「ARMなの? x86なの? という状況ではない」と断言しました。

さらに、これらのIA Android搭載スマートフォンの価格はそれほど高くなく新興国に持って行ける程度となっているが、かといって性能が悪いわけでもない、としてワールドワイドではかなりの数が出ている、としました。

これらの機種はAcer、lenovo、モトローラ、ZTEといった大手メーカーから発売されています。

ただし、「基本的には新興国向けという雰囲気が漂っている」そうで、特にインドでの普及が進んでいるとのことです。

これは、3GやLTEの通信認証の問題から、QUALCOMMのベースバンドプロセッサやモデムを搭載していない機種を嫌う通信キャリアが圧倒的に多いとされることによるものです。

一方(こうしたモデム問題のない)タブレットでは今回のCES(※2014 International CES)をはじめ様々な場所で発表があり、割と見かけているのではないか、としました。

Windows 8.1とAndroidの共存

また、その今回のCESで「Windows 8.1とAndroidの共存」という形での商品発表があったことが指摘されました。

これは古典的なデュアルブート、つまり始動時にブートセレクタで起動OSを選択するのではなく、ハードウェア仮想化支援機能を搭載したx86系CPUで、仮想マシンを管理する仮想マシンモニタ(Virtual Machine Monitor:VMM)において実行される複数の仮想マシン上でWindowsとAndroidを平行して起動させ、必要に応じ適宜これを切り替えて利用できるようにしよう、というものです。

これにより、ビジネスに強いWindowsと省電力に強みのあるAndroidの仮想化による共存をIntelが提案している、というのです。

大別して4系列あるIntel Atom

続いて、IA Androidマシンに搭載される機会の多いIntel Atomプロセッサの概要が紹介されました。

Intel Atomには実は膨大なバリエーションモデルが存在し、その解説だけでも講演の時間が尽きてしまうほどであるため簡単な説明に留められたのですが、その中で今村氏はAtomには大きく分けて4系列が存在する、としました。

Intel製プロセッサの例に漏れずAtomにもCPUコアのマイクロアーキテクチャの世代、半導体製造プロセスルールの世代、それに製品ジャンルで区分されて以下のようなコードネームが与えられています。

ネットブック向け(Nxxx/xxx/Dxxx)
 Diamondville(ダイアモンドビル)45nm
 Pine Trail(パイントレイル)45nm
 Cedar Trail(シーダートレイル)32nm
 Bay Trail(ベイトレイル)22nm

タブレット向け(Zxxx)
 Menlow(メンロー)45nm
 Oak Trail(オークトレイル)45nm
 Clover Trail(クローバートレイル)32nm
 Bay Trail(ベイトレイル)22nm
 Cherry Trail(チェリートレイル)14nm

スマートフォン・タブレット向け(Zxxx)
 Moorestown(ムーアズタウン)45nm
 Medfield(メドフィールド)32nm
 Clover Trail+(クローバートレイルプラス)32nm
 Merrifield(メリーフィールド)22nm

サーバー向け(Sxxx/Cxxx)
 Centerton(センタートン)32nm
 Briarwood(ブライアーウッド)32nm
 Avoton(アヴァトン)22nm
 Rangeley(レンジレイ)22nm
 Denverton(デンバートン)14nm

※厳密にはさらに組み込み機器向け(Exxx)と家電向け(CExxx)が別途設定されているため、6系統ある。

各用途向けで非常に複雑な体系なのですが、今村氏曰く「何とかトレイルと言われるよりは型番で言われた方がいい」とのことで、「あんまりわからなくてもいいかな」とも付け加えられました。

Cherry Trailに要注目

ここで今村氏は今年2014年に出てくるCherry TrailというCPUを覚えていて欲しい、としました。

このCherry Trailは現在最新最小の14nmプロセスルールで製造され、超低消費電力が期待されるモデルです。

今村氏は先に触れたWindows 8.1・Android共存のタブレットなどはこうしたCPUで動作することになると思っている、と見解を述べました。

スマートフォン用?

続けて今村氏はスマートフォン用に触れたのですが、ここで「彼ら(Intel)としてはスマートフォン用というランクで作り続けた」という微妙な言葉が。

実は、Intelが「スマートフォン用」として提供しているAtomは、初代となる2010年発表のMoorestownが全くメーカー・通信キャリアに見向きもされず、2世代目のMedfield(2012年発表)でさえ今村氏曰く「使われようとしている」という有様なのです。

ちなみに、タブレット用とスマートフォン用の作り分けは先にも少し触れた内蔵モデム(※Intelは自社開発のモデムを搭載しています)を同じチップ上に組み込まれているか否か(および内蔵GPUの機種の相違)で行われています。

多数のSATAストレージをサポートするサーバ用Atom

ここで今村氏はCExxx、つまり家電用Atomとそれを搭載したAndroid TVの失敗について少し触れると、Atomとしてはやや異質なサーバ向けについて説明しました。

このサーバ向けAtom、コアそのものは同世代の他の用途向けAtomと大差ないのですが、SATAインターフェイスを14本程度サポート可能であるなど、低消費電力サーバに合わせたカスタマイズが行われたものです。

このサーバ向けに触れる中で今村氏は「(IAには)サーバから携帯まで全部同一アーキテクチャで作れるというような面白みがある」と指摘、IA Androidにも広範囲な分野での普及が期待できることを示唆しました。

二通りあるIA Androidの入手法

さて、ようやく普及の端緒についたばかりのIA Androidですが、現状では2種類の配布形態が存在しています。

一つは、01.org(Intel OpenSource Technology Center)でIntelが配布しているオープンソース版(つまりGoogleのプロプライエタリなアプリを搭載しない)のもの。もう一つはAndroid-x86.orgで配布されているものです。

前者はIntelが主導していることもあって、起動にUEFI(※PC/AT互換機のレガシーなBIOSの後継となる基本プログラム)と64ビット命令をサポートしたCPUが必須とされています。

これは今村氏曰く「(Androidの)ベースになっているLinuxが既に64ビット版であるため」とのことで、更に「(Android固有の部分さえ対応すれば)IntelのCPUの上では64ビットのAndroidがいち早く動く可能性がある」と指摘しました。

後者は比較的古くから公開されているもので、元々はネットブック(EPC)にAndroidを移植する目的でスタートしたプロジェクトでした。そのため、こちらは32ビット命令しかサポートしない、また起動にBIOSを利用するパソコンでも利用可能です。ただし、WiFiやタッチパッドなどのドライバ整備が不十分でハードウェア要件を満たしてもうまく動作しない可能性がある、という問題を抱えています。

Intelの貢献が大きなアプリ開発

次はIA Androidでのアプリ開発について触れられました。

ここでは、Intelが無償で提供・公開している膨大なツール群が紹介されました。その中で今村氏は「リアルタイム アプリ アナライズツール」が特に有用である、としました。

これはアプリが動作している瞬間ごとのCPUの消費電力をリアルタイムで表示するというもので、ARM版のソースプログラムを移植した後でこのツールを用いて電力的に最適化したアプリは、元々のARM版より高速動作するようになり、しかもその修正をARM版のソースプログラムに反映するとARM版でも従来より低消費電力かつ高速に動作するようになるのだそうです。

さらに、現在は無償ではなくなったのですが、Intel製のC++コンパイラが紹介されました。

このIntel純正コンパイラはAndroid NDKで標準採用されているGNU C/C++コンパイラよりもコンパクトかつ高速なバイナリコードを出力することで有名で、やはり高性能なコードが得られるとのことでした。

バイナリ配布の問題

こうしてIA Androidで動作するバイナリを作成したとして、問題となるのはその配付方法です。

実は、Google PlayなどではFATバイナリと称してAndroidのサポートするx86・ARM・MIPSの3アーキテクチャそれぞれに対応したネイティブコードプログラム本体の命令コード部分をひとまとめにして、共用できる画像などのリソースデータと同梱してアップロードしておき、ユーザーがCPUの種類を意識せずに利用できるような工夫が行われています。

ユーザーから見たAndroid

それでは、実際にIA Android搭載機を動作させた場合の互換性や動作速度はどうなのでしょうか?

ここで今村氏はAnTuTuなどのベンチマークテストの結果を示し、概ねSnapdragon 800を搭載するNexus 5の約半分程度、Atom Z2460(Medfield)でGALAXY S II(Exynos 4210搭載)並、Atom Z2560(Clover Trail+)でNexus 4(Snapdragon S4Pro搭載)と同程度の性能が得られる、としました。
さらに、今村氏によれば先日ご紹介したAndroid 4.4で搭載が開始された新仮想マシン「ART」を適用した場合、Nexus 5のベンチマークテスト結果が劇的に上昇し、IA Androidを動作させたCore i5マシン並の性能が出てしまうとのことで、今後は従来のDalvikと同様、ARTもIntelがIA向けに最適化を進めるのではないか、としました。

また、ユーザーにとって気になるアプリ互換性の問題ですが、今村氏によると「9割は問題ない。ほとんどはJavaで書かれている」とのことで、残りで問題になりやすいAndroid NDK利用のゲームについても、「全体の10パーセントくらいがうまく動作しない」が、動作しないゲーム中にはそもそもIA AndroidのサポートしていないAdobe Flashを利用しているものが含まれており、「NDKだから動かない、というのは今の段階でもほとんどない」とのことで、今後はユーザーがx86なのかARMなのかを意識せずに利用できるようになっていくのではないか、との見通しを語りました。

IAデ部

以上のように、大多数のARMプロセッサ搭載機の中ではIAは少数派で特殊な扱いを必要とし、またアプリの動作互換性チェックも必要です。

そこで、アプリの動作検証や開発といったようなことをする目的で、その活動の中心となるように発足したのがIAデ部、つまりIAディベロッパー部です。

具体的には、Intelの協力で7インチあるいは10インチのIA Android搭載タブレット9台を借り、これらを各地の勉強会に貸し出して動作チェックに活用するようなことを考えているそうです。

手始めとして2014年2月のOSC東京(オープンソースカンファレンス2014 Tokyo/Spring)への参加登録をIAデ部として行ってあり、発表と展示を行う予定となっている由です。

コメントは受け付けていません。

PageTopへ