パスワードを忘れた? アカウント作成
17453288 story
Android

Xiaomi 14、Snapdragon 8 Gen 3で32ビットアプリをサポート 8

ストーリー by nagazou
サポート 部門より
headless 曰く、

Qualcomm Snapdragon 8 Gen 3 は 32 ビットアプリをネイティブサポートしないが、この SoC を採用した Xiaomi 14 シリーズでは 32 ビットアプリの実行が可能となっているそうだ (知乎の記事Android Police の記事Android Authority の記事)。

アプリ開発者 mlgmxyysd 氏の調査によると、32 ビットアプリの実行は Amanieu Systems のバイナリ変換ソフトウェア Tango を統合することで実現しているという。mlgmxyysd 氏は Xiaomi 14 Pro を用い、円周率を計算するアプリの 32 ビット版と 64 ビット版で 1 億桁と 21 億 (2,147,483,647) 桁の計算時間を比較している。32 ビット版は 64 ビット版の倍以上の時間を要しているが、32 ビットアプリをネイティブサポートする Xiaomi 12S Pro でも 64 ビット版との速度差は大きく、Tango によるバイナリ変換の速度は良好のようだ。

この議論は賞味期限が切れたので、アーカイブ化されています。 新たにコメントを付けることはできません。
  • by Anonymous Coward on 2023年11月02日 18時18分 (#4557473)

    スーパーπのことかー! (きっと違う)

  • 32bit実行ファイル生成コンパイラが、Androidに実装されてるの?

    間違いなら、指摘して頂けると幸いです。

    • by Anonymous Coward

      javaとかのJITのことかいな
      アプリごとに何で書かれているか判別できるのかな?
      root取っていないと他のアプリ情報に干渉はできないかも
      # androidよくしらない

      • by Anonymous Coward

        Dexバイトコードは32ビット用と64ビット用があるの? なければ64ビット端末が32ビット実行環境を用意するというコストを掛けてまでわざわざ32ビットネイティブコードを生成する理由はなんだろう。,NETでいうP/Invokeみたいな仕組みの都合で32ビット用にしかコンパイルできないことがあったりするのかな?

        • by Anonymous Coward

          古いAndroid端末対策では?
          もしくは、更新されない古いゲームとかアプリ用。

    • by Anonymous Coward

      ソースファイルが何を指すかだけど、ソースコードをコンパイルしているわけではなく、Dexバイトコードをコンパイルしている。

      https://source.android.google.cn/docs/core/runtime?hl=ja [google.cn]
      インストール時に、ART はデバイス上の dex2oat ツールを使用してアプリをコンパイルします。このユーティリティは、DEX ファイルを入力として受け取り、ターゲット デバイスで実行可能なコンパイル済みアプリを生成します。すべての有効な DEX ファイルを簡単にコンパイルできます。

    • by Anonymous Coward

      あまり環境に優しくない仕組みだと思う。
      CPUは数あれど、本当にエッジのデバイス毎にコンパイルさせることはないだろう。
      最初の一回はしょうがないかもしれないが、同じSoC使ってる人向けに、PlayStoreのアプリ配布サーバーにキャッシュできるようにしておけばいいものを。

      • by Anonymous Coward

        全く同じ環境もあるだろうけど、SoCが一緒でも入ってるファームウェアのバージョンだったり、パッチレベルだったりは違うからね。
        インストール時以外にも、ファーム更新とかあると、再コンパイルしてるわけだけど、ストア側に保持する方式だと、ファーム更新があるとストアに繋いで同じ構成のものをダウンロードしなおすなんて事も必要になる。
        どっちが環境負荷かかるのか、わからんのじゃないかなぁ。ART無効化して普通のJITだけにしてる端末もあるわけだしね。

typodupeerror

Stableって古いって意味だっけ? -- Debian初級

読み込み中...