Boot-Image-Profile

Ein Boot-Image-Profil soll die Systemleistung verbessern, indem es die Optimierung von Code zur Kompilierungszeit steuert. Im Wesentlichen handelt es sich um eine Reihe von Daten, die das System darüber informieren, welche Teile des Codes während des Bootvorgangs und von wichtigen Systemkomponenten am häufigsten verwendet werden. Anhand dieser Informationen kann die Laufzeitumgebung des Systems diesen wichtigen Code präventiv kompilieren und optimieren. Das führt zu schnelleren Startzeiten, reibungsloseren App-Starts und einer insgesamt besseren Reaktionsfähigkeit des Systems.

Weitere Informationen zu Boot-Image-Profilen finden Sie unter Boot-Image-Profile.

Profildaten für Boot-Image

AAOS-Boot-Image-Profile enthalten Folgendes:

  • Profil für den Bootklassenpfad (vendor/auto/embedded/products/boot-image-profile.txt): Bestimmt, welche Methoden aus dem Bootklassenpfad optimiert werden.

Beispiel für Profilinhalte

Landroid/accounts/AccountManager;
Landroid/app/ActivityManager;
Landroid/app/ActivityTaskManager;
Landroid/app/ActivityThread;
Landroid/app/AlarmManager;
Landroid/app/AlertDialog;
Landroid/car/Car;
Landroid/car/input/CarInputManager;
Landroid/car/media/CarAudioManager;

Boot-Image-Profile generieren

Informationen zum effektiven Profilieren und Generieren eines realistischen Boot-Image-Profils finden Sie unter Boot-Image-Profile generieren.

Wenn Sie schnell ein Boot-Image-Profil speziell für Beispiel-AAOS-CUJs generieren möchten, also für das Starten von Google Maps und Google Play, verwenden Sie das art/tools/boot-image-profile-aaos-sample-generate.py-Script. Dieses Skript enthält die Schritte, die unter dem oben genannten Link beschrieben werden.

Erste Schritte

Führen Sie die folgenden Befehle aus, um Android zu erstellen, Cuttlefish zu starten und das Skript auszuführen, um ein Beispielprofil für ein AAOS-Boot-Image zu generieren.

Android-Build

Wählen Sie ein Ziel aus und führen Sie Folgendes aus (z. B. aosp_cf_x86_64_auto-ap4a-userdebug):

source build/envsetup.sh
lunch <target>
m

Cuttlefish starten

Folgen Sie der Anleitung für den Einstieg, um das Cuttlefish-Ziel zu starten.

Skript ausführen

python3 art/tools/boot-image-profile-aaos-sample-generate.py

Optional: ADB-Gerät angeben

export ANDROID_SERIAL=<your_device_serial>