質問: ### 前提・実現したいこと お世話になります。 数日前に、PCのグラフィックボード(GeForce GTX670)が壊れてしまったので、 取り外してCPUの内蔵GPUを利用しています。 それ以降、Android Studioから起動するエミュレータの動作が、少しもっさりするようになりました。 アプリ全体の画面表示やリストビューをタップしたときの波紋が広がるようなエフェクトが少し遅くなった気がします。 エミュレータの機種は、Pixel C(2560*1800)です。 Androidエミュレータの快適な動作にGPUの性能は関係あるのでしょうか? 検索でヒットした情報を見ると関係ないようなのですが。 それとも、ほかに原因があるのでしょうか? よろしくお願いいたします。 ### 補足情報(言語/FW/ツール等のバージョンなど) OS: Windows7 Home 64bit Android Studio: ver3.1.2 CPU: intel 3770k メモリ: 16GB HDD: 1TB
回答: **関係あります**。AndroidはOpenGL ESと呼ばれる組み込み用のグラフィックAPIを採用していますが、ホストコンピューターが持つGPUによってOpenGL ESの処理をアクセラレートできるようになっています。 まあ、Windowsネイティブのゲームを動かすときほどの性能差にはならないでしょうが、それでも目に見えた差はあるんじゃないでしょうか。 そのYahoo知恵袋の回答はおかしいですね。 私も同じIvy Bridge世代のCore i7-3770を使っていて、つい最近GT1030搭載のグラボを購入したばかりでした。この質問を受けて、実際どれだけ違うのか興味があったので、実験してみました。 ホストPC CPU : Intel Core i7-3770 M/B : H77MA-S40 (MSI) Video : Intel HD Graphics 4000 or GV-N1030D5-2GL (GIGABYTE) RAM : PC3-12800 24GB OS : Windows 10 Pro Ver.1803 Android Emulatorの設定 Accel : HAXM 7.1.0 Device : Pixel C System Image : Android 8.0 (API 26, x86_64, Google APIs) 0xbenchという古いベンチマークソフトをインストールして、最もGPUの効果が現れそうな3D描画のテストをしてみました。結果は下記の通りです。 | Test | HD4000 | GT1030 | | --- | --- | --- | | OpenGL Cube | 11.60627 | 59.22188 | | OpenGL Blending | 2.7825508 | 62.88124 | | OpenGL Fog | 測定不能 | 62.816467 | | Flying Teapot | 6.89584 | 60.55468 | (単位はfps) このように、GPU性能による差は明らかです。HD4000でもNexus 5Xのようなスマホサイズデバイスならばそこそこは動くのですが、Pixel Cはかなりきつかったようですね。私もここまでの差が出るとは予想外でした。 !