FC2ブログ

鈴の音情報局blog

携帯関連の将来や最新の技術情報や業界の行く末などを適当に綴るblogです。 内容の信憑性は?余り信じない方がいいと思います。
本家の鈴の音情報局はこちら→http://suzunone.0g0.jp:8800/
スマホ・携帯端末アクセス[ランキング][アクセスシェア(グラフ)] (毎年10/1にログをクリア)

Android 4.4 Kitkatの64bit化

「Android 4.4 KitKat」は64bitに対応か─開発者フォーラムで明らかに ~ リンゲルブルーメン
Googleの次期モバイルOS「Android 4.4 KitKat」は64bitに対応する可能性があることがインテルの開発者フォーラムで明らかになりました。
情報元によると、IntelがAndroid OSの「将来の拡張」を説明するために作成したスライドに「64bit化」の項目が含まれていた模様。

Android 4.4 Kitkatは64bitに対応という情報が明らかになりました。

すごくタイムリーですね。

ただこの情報だけでは、動作マシン(物理層)のCPU側が64bitに対応される事なのか、
それともターゲットマシン(上位)のVM(アプリ層)が64bit化される事なのかが分かりません。

私の昨日の予想では物理層側が64bitに対応するだけで、アプリ層は現状のまま据え置き
じゃないかなと予想しています。理由は昨日の記事にまとめてあります。

VM側のアプリ層は64bit化するメリットって今の所見当たりませんしね。
CISC等ではわざとコンパクトなコードを目指して、8bitや16bitのインストラクションコードを
割り当てたりすることを考えると、無理に肥大化させるのはデメリットにしかならないという
発想も出来たりしますし。

というか、Dalvik VMはレジスタベースの仮想マシンですが、そのDalvikVMのレジスタが何bit
かという事自体、公開されていなかったような気がします。それを考えると、アプリ層を
元から描き替えること自体がそもそも発想の中にないのかも知れませんね。
関連記事
  1. 2013/09/18(水) 22:50:09|
  2. 携帯
  3. | トラックバック:0
  4. | コメント:3
<<iPhone 5cの予約状況2013/09/18 | ホーム | Xperia Z2のスペックが流出?─5.2インチ画面、3GB RAMを搭載か>>

コメント

64bit化そのものよりもARMv8で追加されたレジスタや暗号化支援、強化版NEONが効いてくるように思います。
鈴さんが先の記事で紹介されたiPhone5Sのベンチマークで著しく性能向上が実現されている項目も行列演算、暗号化演算でしたので
そのインパクトは無視できないように感じます。

また、中間コードをJITコンパイラで実行形式に変換してアプリを実行するのでレジスタ増量はAndroidに有効に働くようにも思います。
建前上はCPUの命令セットアーキテクチャの影響を受けないようになっていますが、微調整が必要な部分はコンパイラ(ソースコード→中間コード)で
iOSのユニバーサルバイナリ的なものにして実行時にVMが適宜判断していくんじゃないですかね。
最終的に高速にアプリを実行できるなら、ARMv7でもARMv8でもx86でも構わない。AndroidはそういうOSだと思います。
  1. URL |
  2. 2013/09/19(木) 00:52:00 |
  3. unsigned float #-
  4. [ 編集]

64bit化

CPUの64bit化といった場合、どこが64になるのかでごっちゃになってます

モバイルギアで有名なVR4100シリーズ、これも64bitCPUですよ
だって「レジスタ」が64bitですから…
ん…レジスタに限定したってことは…
そう命令コードは32bit長です…

x86なんかは命令セットが不定長ですし…
ARMv7は32bitレジスタなのに命令セットは8bitセットや16bitセットもありますね

IFバス幅、レジスタ、メモリアドレス、命令セットで全部が32で同じというのは32bitRISCのCPUに多いですけど
それ以外ではそれほど多くなく、何かしら違うものが多いですよ

そんな中で○○bitCPUといった場合、どこを指してることが多いかというと
レジスタ長だったりします

なのでARMv8も命令セットは32bitだったりします…
なので64bit化するとプログラムサイズは若干増える位で倍増するわけではないのです
  1. URL |
  2. 2013/09/20(金) 16:38:01 |
  3. 姫 #Qgp/yXvw
  4. [ 編集]

>unsigned floatさん
暗号化はモロな名前だったので分かったのですが、もう一つは行列計算だったのですか。
これは大いに効き目が有りそうですね。
成る程、何が高速化にどう寄与してきたのか理解出来てきたように思います。

ただレジスタ増量を有効活用するにはDalvikVMやJITコンパイラを64bit仕様に
完全に最適化しないと、ただ64bitコードに変換して動かすだけだとパフォーマンスは
出ないので、その最適化をどこまでしてくれるかですね。
レジスタの妙の技を持った最適化職人がどれだけいるのかにかかっていると思います。
スタック型なら真っ直ぐな性格の人だと綺麗に組めるんですが、レジスタ型は本当に
速くしようとすると腕が要るので、人次第って所が多いんですよね。


>姫さん
もーーーっ、姫さん性格悪いなぁ・・・(笑)
というか、なんでそこまで冷静にばっちり分析できるのか、いつも不思議です。
全く仰る通りで、どの部分の64bit化を指すかで64bit化の意味が変わってきますね。
ただ、現実には64bit化ってサプライヤの言いたい放題だと思います。
さすがに「ぴゅうたの16bit」のようにあからさまだとみんな突っ込みを入れますが、
それらしいものがそれなりに出てくると、リバースエンジニアリングの結果が出る迄
サプライヤの言葉を信じるしかないのが現状だと思います。

レジスタサイズだけを取るなら、浮動小数点だと128bitや256bitの物も有ったりしますしね。
私的にはALUのサイズの事かなとか勝手に考えてしまっていたりします。

VR4100シリーズと言えばMIPS系でしたっけ?
MIPSは早期に64bitの環境を整えたので64bitに移行が速かったですね。
でもワークステーションではMIPS32のコードを食わせている例も多かったみたいですけど。
MIPS64の命令セットでも32bit長なんでしょうかね?
その辺もう全然資料に触れる機会が無いから分からんです。

>IFバス幅、レジスタ、メモリアドレス、命令セットで全部が32で同じというのは32bitRISCのCPUに多いですけど
初期のRISC CPUでは間違いなくそうでしたよね。
でもRISCも結局シンプルから複雑化への道を辿って、今時のRISCは互換性と利用者のコスト意識と
いうもののせいで、必ずしも今もRISC系のCPUに多いとは言い難くなってきているかなという気がします。
もっとシンプル化したVLIWは離陸に失敗しましたしね。
VLIWはただでさえバグの多いコンパイラとオプティマイザに負担かけ過ぎ・・・。

>なのでARMv8も命令セットは32bitだったりします…
これは初耳でした。
というか、なんでそこまで詳しいのか、いつも不思議でならないです(;・∀・)
  1. URL |
  2. 2013/09/22(日) 14:45:34 |
  3. 鈴 #GpEwlVdw
  4. [ 編集]

コメントの投稿(投稿時には必ず何らかの名前を付けてください)


管理者にだけ表示を許可する

(名前を入れないとクリックできません)

トラックバック

トラックバックURLはこちら
http://suzunonejh.blog15.fc2.com/tb.php/4054-858a7b65
この記事にトラックバックする(FC2ブログユーザー)

最近の記事

機能リンク

最近のコメント

カテゴリー

ブログ内検索

ブログリンク

RSSフィード

QRコード

QR

月別アーカイブ



メールフォーム

お問い合わせ・ご質問はこちらから。

名前:
メール:
件名:
本文:

suzunone.m(あっと)gmail.com に
直メでもOKです。