パフォーマンスの分析情報を活用する

 

パフォーマンスの分析情報は、ゲーム デベロッパーや、ネイティブ コードを使用しているアプリのデベロッパー向けに設計された、Android Vitals の新機能です。この情報は、ゲーム デベロッパー用に Android Vitals を強化する新しいプラグインである、Android Performance Tuner によって提供されます。

この記事では、Google Play Console 内でパフォーマンス分析情報が表示される場所や内容、分析情報を解釈する方法について紹介します。

初めて利用する場合

Android Performance Tuner を組み込んだゲームを Play 上で公開し、それをユーザーがインストールして使用を開始すると、データ収集が始まります。データ量が最小しきい値に達すると、Google Play Console 内に表示されるようになります([品質] > [Android Vitals] > [パフォーマンス] > [分析情報])。

データが表示されるまでの処理や操作:

  • 目標フレームレートを設定するよう求めるメッセージが表示されます。この設定はいつでも変更できます。
  • [概要] ページや各 [詳細] ページで [品質レベルを検査します] を選択すると、品質レベルと忠実度パラメータを確認できます。

[概要] ページが表示されない場合や、「十分なデータが収集されるまで待つ必要がある」というメッセージが表示されない場合は、Android Performance Tuner に関する問題のトラブルシューティングとよくある質問をご覧ください。

[概要] ページについて

概要の指標

主要な指標(遅いフレーム、合計フレーム数、合計セッション数)は、ゲームのパフォーマンスに関する概要と、分析情報や指標を生成する際に使用されたデータセットのサイズを示します。

[概要] に表示される [遅いフレーム] 指標は、絶対数です。

  • 遅いフレーム(%): 「遅いフレームの数」を「合計フレーム数」で割った値

この絶対数から、ユーザー エクスペリエンスの経時変化を把握、追跡できます。ただし、Android Performance Tuner によって遅いフレームが測定されていても、問題として識別されなければ、特に対処する必要はありません。詳細については、遅いフレームの意味と計算方法についての説明をご覧ください。

デバイスモデルの問題とアノテーションの問題

問題として識別されることで、フレーム時間のパフォーマンスに対処できます。特定のデバイスモデルやアノテーションが目標フレーム時間を常に達成していない場合、問題として識別されます。問題かどうかは、90 パーセンタイルのフレーム時間と、事前定義された遅いフレームのしきい値とを比較して判断されます。このしきい値は、目標フレーム時間から計算されます。問題の詳細については、Android Performance Tuner の詳細をご覧ください。

各問題の [影響] 指標とは、遅いフレームの総数のうち、その問題が関与している部分の割合を示します。この部分を、対処が可能な(つまり、潜在的原因が特定された)遅いフレームのセットと考えることができます。なお、遅いフレームによっては、デバイスモデルとアノテーションの両方の問題が関与している場合があるため、合計値が 100% を超えることもあります。

期間セレクタ

次の 3 つの期間の中から選択できます。

  • 今日: UTC から現在まで(1 日の一部)
  • 昨日: UTC の 1 日前から UTC の今日まで(24 時間)
  • 過去 7 日間: UTC の 7 日前から現在まで(6 日間プラス「今日」)

デバイスモデルの分析情報

[デバイスモデルの分析情報] は、次の 3 つのセクションで構成されています。

  • デバイスモデルのグラフ
  • デバイスモデルの問題の表
  • デバイスモデルの最適化案の表
デバイスモデルのグラフ

デバイスモデルのグラフは、フレーム時間を報告するすべてのデバイスモデルについて、フレーム時間のパフォーマンスを包括的に表示します。グラフを理解するうえで、以下の点にご注意ください。

  • グラフでは、各デバイスモデルが品質レベルごとに個別の円で表されます。
  • 円の大きさは、そのデバイスモデル上でカウントされたセッション数に対応します。スケールは連続的に変化します。
  • 「各デバイスモデルのフレーム時間」x「品質レベル」のすべての組み合わせが、グラフ上に表示されます。なお、各組み合わせにおける 90 パーセンタイルのフレーム時間が使用されます。
  • 目標フレーム時間がグラフ上に線として表示されます。
  • 遅いフレームのしきい値(右側)と速いフレームのしきい値(左側)が目標範囲の境界となります。網掛けセクションの右側にあるものはすべて「問題」であり、左側にあるものはすべて「最適化案」です。

グラフの右上で、特定のデバイスモデルを検索できます。また、グラフにカーソルを合わせてクリックすると、各デバイスモデルの概要を表示できます。

注:

  • デバイスの指標は、デバイスモデルよりも細かいバリエーション単位で集計されます。同一のモデルであっても、複数の仕様(RAM や SoC など)がある場合、それぞれバリエーションとして区別されます。そのため、グラフ内でデバイスモデルを名前で検索したときに、同じ品質レベル内で複数一致する結果が返されることがあります。この場合、表示される各デバイスは、基盤となる仕様が異なります。その詳細については、「デバイスの問題」にドリルダウンすると確認できます。
  • 1 つのデバイスモデルに複数の品質レベルのセッションが含まれる場合、グラフ内の複数の行に表示されます。この状況がどのように発生するかについて詳しくは、Android Performance Tuner に関する問題のトラブルシューティングとよくある質問をご覧ください。
デバイスモデルの問題の表

問題の表は、各品質レベルについて、パフォーマンスが低下しているすべてのデバイスモデルの影響を合計した値を表示します。この値は、デバイスモデルのグラフの円を集計した値になります。デバイスモデルのグラフの円は、対象の品質レベルごとに、しきい値よりも遅いデバイスモデルに関連付けられています。品質レベルごとに、それぞれ独自の行が用意されます。ただし、その品質レベルにパフォーマンスが低下しているデバイスがない場合、その行は表示されません。

遅いフレームの指標には、次の 2 つがあります。

  • 遅いフレーム: 各品質レベルに属し、パフォーマンスが低下しているデバイスモデルの影響を絶対数で示したもの。遅いフレームが最も多い品質レベルは、[概要] セクションで、デバイスモデルの主要な問題として表示されます。
  • 遅いフレーム(%): 「この品質レベルに属し、パフォーマンスが低下しているデバイスモデルでの遅いフレーム数」を「この品質レベルでの合計フレーム数」で割った値。この指標により、特定の品質レベルの全体的なパフォーマンス、つまり、その品質レベルの全フレームのうち、どれくらいの割合が「遅い」のかを把握できます。

どちらの指標も、優先順位の判断に使用できます。たとえば、遅いフレームの絶対数に基づいて優先順位を付けたり、ユーザー ミックスの経時変化が予想される場合には [遅いフレーム(%)] に着目したりすることができます。

デバイスモデル数の列は、問題の対処方法を判断する早期診断の材料になります。パフォーマンスが低下しているデバイスモデルの数が、その品質レベルのデバイスモデルの総数に非常に近い場合、その品質レベル全体のパフォーマンスが低下していることを示します。そのような場合、品質レベルの忠実度パラメータを検証したり、そもそもその品質レベルが必要かどうかを検討したりすることをおすすめします。パフォーマンスが低下しているデバイスモデルの数が、総数に比べてはるかに少ない場合は、対処の範囲を、品質レベル自体ではなく、パフォーマンスが低下しているデバイスモデルだけに限定することをおすすめします。

表の中で品質レベルの行をクリックすると、その品質レベルにドリルダウンして [問題の詳細] ページに移動します。

注: デバイスモデルのグラフと同様、1 つのデバイスモデルに複数の品質レベルのセッションがある場合、表の複数の行に表示されます。この状況が発生する原因については、Android Performance Tuner に関する問題のトラブルシューティングとよくある質問をご覧ください。

デバイスモデルの最適化案の表

最適化案の表は、問題の表と同様、速いフレームのしきい値を超えたデバイスモデルに関して、グラフ上の該当する行の値を合計したものです。最初の 2 つの指標は異なり、[遅いフレーム] 指標ではなく、[速いフレーム] 指標が示されます。ロジックは同じで、デバイスモデルの問題の場合と同様です。最後の 2 つの列を比較することで、品質レベル全体を調整するのか、デバイスモデルごとに調整するのか判断できます。

最適化案の詳細については、Android Performance Tuner の詳細をご覧ください。

ヒント: 表の中で品質レベルの行をクリックすると、その品質レベルにドリルダウンして [最適化案の詳細] ページに移動します。

アノテーションの分析情報

[アノテーションの分析情報] は、次の 2 つのセクションで構成されています。

  • アノテーションのグラフ
  • アノテーションの問題の表
アノテーションのグラフ

アノテーションのグラフは、デバイスモデルのグラフとよく似ています。フレーム時間を報告するすべてのアノテーションを対象として、フレーム時間のパフォーマンス(問題や最適化案を含む)を包括的に表示します。

  • 目標フレーム時間と目標フレーム範囲がグラフに表示されます。
  • グラフ上の各円は、各アノテーション(タイプ:値)に対応しています。アノテーションの定義とカウントは、この粒度で行われます。円の大きさは、そのアノテーション値のセッション数に対応しています。
  • 「各アノテーションのフレーム時間」x「品質レベル」のすべての組み合わせが、グラフ上に表示されます。なお、各組み合わせにおける 90 パーセンタイルのフレーム時間が使用されます。

グラフの右上で、特定のアノテーション タイプやアノテーション値を検索できます。また、グラフにカーソルを合わせてクリックすると、各アノテーションの概要を表示できます。

アノテーションの問題の表

アノテーションの問題の表には、品質レベルごとに、パフォーマンスが低下しているすべてのアノテーションの影響を合計した値が表示されます。この値は、アノテーションのグラフにおいて、遅いフレームのしきい値よりも遅いアノテーションを示す円を集計した値になります。

アノテーションの問題の表に関して、以下の点にご注意ください。

  • アノテーションの問題は、「アノテーション(タイプ:値)」x「品質レベル」の粒度で定義されます。
  • パフォーマンスが低下している各アノテーションの親の行には、そのアノテーションに対するすべての品質レベルにわたる集計値が表示されます。親の行を展開すると、品質レベルごとの内訳が表示されます。
  • 遅いフレーム: パフォーマンスが低下しているアノテーションの絶対数で示した影響。遅いフレームが最も多いアノテーションは、[概要] で、アノテーションの主要な問題として表示されます。
  • 遅いフレーム(%): 「パフォーマンスが低下しているアノテーションでの遅いフレーム数」を「パフォーマンスが低下しているアノテーションでの合計フレーム数」で割った値。この指標により、特定のアノテーションの全体的なパフォーマンス、つまり、そのアノテーションの全フレームのうち、どれくらいの割合が「遅い」のかを把握できます。
  • フレーム時間は、アノテーションの問題ごとに提供されます。GPU をサポートするゲームエンジンを使用している場合は、GPU 時間も提供されます(詳細はフレーム時間をご覧ください)。これにより、90 パーセンタイルにおいて特定のアノテーションがどれほど遅くなっているか、その根本的な原因が CPU の制約、または GPU の制約にあるのかを把握できます。

最適化案の詳細については、Android Performance Tuner の詳細をご覧ください。

[詳細] ページについて(デバイスモデルのみ)

問題の詳細

[問題の詳細] ページを使用すると、特定の品質レベルに属し、パフォーマンスが低下しているデバイスの詳細について確認し、対処方法を決定できます。また、これにより、品質レベルごとにパラメータの問題やデバイスの問題を識別できるようになります。

 

問題

識別方法

推奨される対処方法

全体的にうまく機能していない品質レベルがある。

その品質レベルに属するほぼすべてのデバイスモデルでパフォーマンスが低下している。

([概要] ページまたは [デバイスの問題の詳細] ページ)

品質レベル単位で対処します。その品質レベルの忠実度パラメータを変更するか、そのレベルを完全に削除して、すべてのデバイスを新しい(低い)品質レベルにマッピングします。

特定のデバイスモデルが、あまりに高い品質レベルに属している。

その品質レベルに属する一部のデバイスモデルでパフォーマンスが低下している(すべてのデバイスではない)。

([概要] ページまたは [デバイスの問題の詳細] ページ)

最終的には、こうしたデバイスモデルが属する品質レベルを下げる必要があると考えられますが、その前に、最善の最適化方法を把握するために、ドリルダウンして詳細に検討します。

問題の所在を、特定のデバイス仕様だけに切り分けることができる。

特定の仕様と問題との間に強い相関関係がある。

([デバイスの問題の詳細] ページ)

デバイスの仕様単位で対処します

例: 特定の GPU をテストし、その GPU を使用しているすべてのデバイスの品質レベルを 1 段階下げます。

問題の所在を、特定の仕様だけに簡単に切り分けることができない。

特定の仕様と問題との間に明確な相関関係がない

([デバイスの問題の詳細] ページ)

デバイスモデル単位で対処します

 

[問題の詳細] ページは、次の 3 つのセクションで構成されています。

  • 概要
  • デバイス仕様の内訳表
  • デバイスモデルの内訳表
概要

各問題の概要に表示されるデータは、[概要] ページでデバイスモデルの問題の表に表示されるその品質レベルのデータに対応しています。

デバイス仕様の内訳表

パフォーマンスが低下しているデバイスモデルが多数ある場合、デバイスモデル問題のトラブルシューティングが困難になることがあります。デバイス仕様の内訳表により、デバイス仕様単位で最適化が考えられるかどうかを判断できます。パフォーマンスが低下しているデバイスの分布が、デバイス属性別に表示されます。

  • [影響] は、その品質レベルに属し、パフォーマンスが低下しているすべてのデバイスの遅いフレームの総数に対して、そのデバイス仕様での遅いフレームが占める割合を示します。数値が大きいほど、そのデバイスに関する遅いフレームの数が多いことがわかります。
  • [遅いフレーム(%)] は、その品質レベルにおけるそのデバイス仕様の全体的なパフォーマンスを示します。
  • 遅いフレーム(%)と品質レベルの平均の比較: これは、遅いフレーム(%)をそのレベルでの遅いフレーム全体の割合と比較したものです。この値を上回る仕様には、左側に緑色のバーが表示されます。この値を下回る仕様には、右側に赤色のバーが表示されます。

重要: [影響] 列を単独で、仕様単位の優先順位付けに使用することはできません。あるデバイス仕様が大量に遅いフレーム数に寄与している(影響が大きい)場合でも、その仕様の総フレーム数がわからなければ、「仕様自体のパフォーマンスが良くない」と結論付けることはできません。この疑問に答えるのが [遅いフレーム] 指標です。次のような例が考えられます。

  • ある仕様の影響が大きくても、その品質レベル全体と比較してそれほどパフォーマンスが低くない場合([遅いフレーム(%)] 値が小さい場合)、この仕様について最適化できる可能性はほとんどありません。
  • 逆に、影響が最大でなくても、ある仕様のパフォーマンスが良くない場合([遅いフレーム(%)] 値が大きい場合)、その仕様について直接最適化するのが適切となることがあります。
デバイスモデルの内訳表

デバイスモデルの内訳表には、その品質レベルに属し、パフォーマンスが低下しているデバイスがすべ表示されます。この表の情報は、ダウンロードできます。ダウンロードしたデータセットには、ユーザー インターフェースに表示されない追加のデバイス メタデータが含まれます。

  • [影響を受けるセッション] は、その品質レベルにおいてそのデバイス上で生じたセッションの総数を示します。この数は、その中の遅いフレームの数に関係なく、すべてのセッションを集計した値です。ごく少数のセッションに遅いフレームのすべてが含まれる可能性もあります。
  • [遅いフレーム(%)] は、そのデバイスモデルと品質レベルにおける遅いフレームの割合を示します。定義上、パフォーマンスが低下しているデバイスモデルとは、この値が 10% 以上に達したデバイスモデルです。
  • フレーム時間は、デバイスモデルごとに提供されます。GPU をサポートするゲームエンジンを使用している場合は、GPU 時間も提供されます。これにより、90 パーセンタイルにおいて特定のデバイスモデルがどれほど遅くなっているか、その根本的な原因が CPU の制約、または GPU の制約にあるのかを把握できます。

この情報は役に立ちましたか?

改善できる点がありましたらお聞かせください。

さらにサポートが必要な場合

次の手順をお試しください。

検索
検索をクリア
検索を終了
Google アプリ
メインメニュー