Kurzanleitung für Android GPU Inspector

In diesem Thema wird beschrieben, wie Sie mit Android GPU Inspector (AGI) System-Profiling und Frame-Profiling für Ihre Android-App durchführen.

Diese Kurzanleitung richtet sich an Entwickler, die mit der Grafikentwicklung unter Android vertraut sind.

Computeranforderungen

Der Computer, auf dem AGI ausgeführt wird, muss die folgenden Anforderungen erfüllen:

AGI herunterladen und installieren

Laden Sie AGI für Ihr Betriebssystem herunter und installieren Sie es.

Anforderungen an Android-Apps

In diesem Abschnitt werden die Anforderungen an die Android-App beschrieben, für die ein Profil erstellt wird:

  • Ihre Android-App muss debugfähig sein. Das Attribut `debuggable` im Android-Manifest der App muss auf true gesetzt sein. Dieses Attribut ermöglicht die korrekte Instrumentierung durch den Grafiktreiber. Bei Vulkan-Anwendungen ermöglicht dieses Attribut AGI, beim Start der Anwendung eine eigene Vulkan-Ebene hinzuzufügen.

    <application [...] android:debuggable="true">
    

Wenn Ihre App Vulkan nativ verwendet, sind für AGI außerdem die folgenden Voraussetzungen erforderlich:

  • Für Ihre App müssen Vulkan-Validierungsebenen aktiviert sein. Wenn sie nicht aktiviert sind, können Sie die folgenden Befehle ausführen, um zu erzwingen, dass Ihre App mit den Validierungsebenen ausgeführt wird, die in der AGI-APK (com.google.android.gapid.<abi>) enthalten sind:

    app_package=<YOUR APP PACKAGE NAME HERE>
    abi=arm64v8a # Possible values: arm64v8a, armeabi-v7a, x86
    
    adb shell settings put global enable_gpu_debug_layers 1
    adb shell settings put global gpu_debug_app ${app_package}
    adb shell settings put global gpu_debug_layer_app com.google.android.gapid.${abi}
    adb shell settings put global gpu_debug_layers VK_LAYER_KHRONOS_validation
    

    Wenn Sie mit dem Profiling fertig sind, können Sie diese Validierungsebenen mit den folgenden Befehlen deaktivieren:

    adb shell settings delete global enable_gpu_debug_layers
    adb shell settings delete global gpu_debug_app
    adb shell settings delete global gpu_debug_layers
    adb shell settings delete global gpu_debug_layer_app
    
  • Ihre App darf keine Warnungen oder Fehler melden, wenn sie mit den Vulkan-Validierungsebenen aktiviert ausgeführt wird. Beheben Sie alle Vulkan-Validierungsfehler, bevor Sie mit dem Profiling beginnen.

  • Wenn Sie Beta-GPU-Treiber verwenden, fügen Sie dem <application> Tag des Android-Manifests die folgenden Metadaten hinzu:

    <meta-data
              android:name="com.android.graphics.developerdriver.enable"
              android:value="true" />
    

Anforderungen an Android-Geräte

Für AGI gelten die folgenden Anforderungen an Android-Geräte:

Gerätevalidierung

Für AGI ist ein kompatibler GPU-Treiber erforderlich. Damit AGI gültige Profiling-Daten liefert, wird beim ersten Verbinden eines neuen Geräts eine Validierungsprüfung durchgeführt, die etwa zehn Sekunden dauert. Nachdem die Prüfung bestanden wurde, können Sie das Gerät verwenden, um Profile für Android-Apps zu erstellen.

Unterbrechen Sie das Gerät nicht, während die Validierung ausgeführt wird. Andernfalls kann die Validierung des Geräts fehlschlagen. Wenn die Validierung eines Geräts fehlschlägt, obwohl es richtig eingerichtet ist, können Sie die Validierung wiederholen, indem Sie das Gerät noch einmal auswählen.

Die Validierung ist ein einmaliger Schritt für ein Gerät und die Ergebnisse werden für die zukünftige Verwendung von AGI im Cache gespeichert. AGI führt die Validierung jedoch noch einmal aus, wenn sich die Geräteeinrichtung ändert, z. B. wenn der GPU-Treiber oder die Android-Version aktualisiert wird.

Wenn ein Gerät als ein unterstütztes Gerät aufgeführt ist, können Sie davon ausgehen, dass die Validierung von AGI erfolgreich ist. Wenn das Gerät nicht aufgeführt ist, ist der GPU-Treiber höchstwahrscheinlich nicht mit AGI kompatibel.

Wenn Ihr Gerät unterstützt wird, die Validierung aber fehlschlägt

Prüfen Sie, ob Sie alle Android-Anforderungen und Computeranforderungen erfüllt haben, die in den vorherigen Abschnitten beschrieben sind, und ob das Gerät ordnungsgemäß über ein USB-Kabel mit dem Computer verbunden ist.

Wenn alle Anforderungen erfüllt sind, melden Sie das Problem in unserem GitHub Repository.

Wenn Ihr Gerät nicht unterstützt wird

Wir arbeiten mit unseren OEM-Partnern zusammen, um die Unterstützung für weitere Geräte hinzuzufügen. Sie können in unserem GitHub-Repository ein Problem melden, um Unterstützung für ein Gerät anzufordern.

Profildaten erfassen

In den folgenden Abschnitten wird beschrieben, wie Sie Profildaten erfassen und die resultierende Tracedatei öffnen, um die Ergebnisse zu analysieren.

Konfigurieren Sie die Android-Einstellungen.

Bevor Sie mit dem Profiling beginnen, müssen Sie diese Android-App- und Geräteeinstellungen konfigurieren, die die App und das Gerät angeben, für die ein Profil erstellt werden soll.

  1. Verbinden Sie Ihr Android-Gerät über ein USB-Kabel mit Ihrem Computer.

  2. Starten Sie AGI auf Ihrem Computer.

    Wenn Sie AGI zum ersten Mal starten, wird der Bildschirm Willkommen angezeigt, auf dem Sie nach dem Pfad zur ausführbaren Datei von adb gefragt werden. AGI speichert diese Einstellungen in der Datei .agic in Ihrem Ordner HOME. Wenn Sie dies bereits getan haben, können Sie diesen Schritt überspringen.

    Begrüßungsbildschirm
    Abbildung 1: Bildschirm Willkommen
  3. Geben Sie im Feld Pfad zu adb den Pfad zur ausführbaren Datei von adb ein. Die Kontrollkästchen nach diesem Feld sind optional.

  4. Klicken Sie auf Jetzt loslegen , um den Startbildschirm aufzurufen.

    AGI-Startbildschirm
    Abbildung 2: Hauptstartbildschirm von Android GPU Inspector.
  5. Klicken Sie auf dem Startbildschirm auf Neuen Trace erfassen. Das Dialogfeld Neuen Trace erfassen wird angezeigt. Alternativ können Sie auf die Schaltfläche Systemprofil-Trace erfassen klicken.

    Dialogfeld „Neuen Trace erfassen“
    Abbildung 3: Dialogfeld **Neuen Trace erfassen**
  6. Wählen Sie im Bereich Gerät und Typ das Android-Gerät aus, für das Sie ein Profil erstellen möchten. Wenn es nicht in der Liste Gerät angezeigt wird, klicken Sie auf den Pfeil zum Neuladen, um die Liste zu aktualisieren.

  7. Wählen Sie im Bereich Anwendung die App aus, für die Sie ein Profil erstellen möchten. Wenn das Paket nur eine Aktivität enthält, können Sie das Paket anstelle der Aktivität auswählen.

    AGI enthält eine Beispiel-Vulkan-App. So verwenden Sie die Beispiel-App anstelle Ihrer eigenen:

    1. Klicken Sie neben dem Feld Anwendung auf die Schaltfläche ....

      Das Dialogfeld Anwendung für Trace auswählen wird angezeigt. Es enthält eine Liste der Apps, die auf dem ausgewählten Gerät nachverfolgt werden können.

    2. Geben Sie im Textfeld Filter gapid ein, um nur Anwendungen anzuzeigen, die gapid in ihrem Paketnamen enthalten.

    3. Maximieren Sie das Paket, wählen Sie com.google.android.gapid.VkSampleActivity aus und klicken Sie dann auf OK.

      Sie kehren zum Dialogfeld Neuen Trace erfassen zurück. Das Feld Anwendung ist mit der ausgewählten App gefüllt.

  8. Lassen Sie die anderen Felder im Bereich Anwendung leer.

  9. Klicken Sie auf OK.

Jetzt können Sie mit AGI System- und Frame-Profiling durchführen.

Systemprofil erstellen

So erstellen Sie ein Systemprofil:

  1. Klicken Sie auf dem AGI-Startbildschirm auf Neuen Trace erfassen, um das Dialogfeld Systemprofil erfassen aufzurufen.

  2. Wählen Sie in der Liste Typ die Option Systemprofil aus.

  3. Legen Sie im Bereich Start und Dauer für Start um die Option Manuell, und für Dauer den Wert 2 fest.

  4. Klicken Sie im Bereich Trace-Optionen auf Konfigurieren. Eine Liste mit Profiling-Optionen wird angezeigt.

    Dialogfeld „Aufnahme konfigurieren“
    Abbildung 4: Die Profiling-Optionen im Dialogfeld Systemprofil erfassen.
  5. Wählen Sie die Profildaten aus, die Sie erfassen möchten.

  6. Klicken Sie im Bereich GPU auf Auswählen.

    Eine Liste mit Zählern wird angezeigt, die Sie auswählen können.

    Zählerkonfiguration
    Abbildung 5: Zähler auswählen.
  7. Klicken Sie auf Standard , um die Standardzähler auszuwählen, und klicken Sie auf OK , um zu den Profiling-Optionen zurückzukehren.

  8. Klicken Sie auf OK , um zum Hauptdialogfeld Systemprofil erfassen zurückzukehren.

  9. Wählen Sie im Bereich Ausgabe ein Ausgabeverzeichnis aus, in dem die Tracedateien gespeichert werden sollen, die während des Profilings generiert werden. Das Feld Dateiname sollte automatisch ausgefüllt werden, Sie können es aber auch bearbeiten.

  10. Klicken Sie auf OK. Dadurch wird die ausgewählte App auf dem Android-Gerät gestartet und ein Pop-up-Fenster mit der Schaltfläche Starten angezeigt.

  11. Klicken Sie auf die Schaltfläche Starten , um mit der Erfassung der Profildaten zu beginnen, und warten Sie einige Sekunden, bis der Vorgang abgeschlossen ist.

  12. Klicken Sie auf Trace öffnen. Die angezeigte Ansicht ist ähnlich wie Systrace.

    Systemprofil-Trace
    Abbildung 6: Die Benutzeroberfläche des Systemprofilers.

    Neben den in Systrace verfügbaren Daten zeigt AGI auch Informationen zur GPU-Leistung. Weitere Informationen zum Anzeigen von Systemprofiling Daten finden Sie unter Systemprofil von AGI ansehen.

Informationen zu zusätzlichen Einstellungen finden Sie unter Optionen für das System-Profiling.

Frame-Profil erstellen

So erstellen Sie ein Profil für einen einzelnen Frame aus Ihrer App:

  1. Klicken Sie auf dem AGI-Startbildschirm auf Neuen Trace erfassen, um das Dialogfeld Neuen Trace erfassen aufzurufen. Alternativ können Sie auf die Schaltfläche Frame-Profil-Trace erfassen klicken.

  2. Wählen Sie in der Liste Typ je nach verwendeter Grafik-API Vulkan oder OpenGL on ANGLE aus. Achten Sie darauf, dass Sie die richtige Option auswählen, da AGI sonst keine Grafikbefehle erfasst.

  3. Legen Sie im Bereich Start und Dauer für Start um die Option Manuell fest. Wenn Sie auf die Schaltfläche Frame-Profil-Trace erfassen geklickt haben, ist dieser Schritt bereits abgeschlossen.

  4. Wählen Sie im Bereich Ausgabe ein Ausgabeverzeichnis aus, in dem die Tracedateien gespeichert werden sollen. Das Feld Dateiname sollte automatisch ausgefüllt werden, Sie können es aber auch bearbeiten.

  5. Optional:Einige Apps starten einen anderen Prozess, der die gesamte Grafikverarbeitung übernimmt. Wenn Sie diesen Prozess erfassen möchten, geben Sie seinen Namen an.

  6. Klicken Sie auf OK. Dadurch wird Ihre App auf dem Android-Gerät gestartet und ein Pop-up-Fenster mit der Schaltfläche Starten angezeigt.

  7. Klicken Sie auf die Schaltfläche Starten und warten Sie einige Sekunden, bis das Profiling abgeschlossen ist.

  8. Klicken Sie auf Trace öffnen , um die Profildaten anzusehen. Informationen zu den einzelnen Bereichen der Benutzeroberfläche des Frame-Profilers finden Sie unter der Übersicht zum Frame-Profiling.

Informationen zu zusätzlichen Einstellungen finden Sie unter Optionen für das Frame-Profiling.