Profils d'images de démarrage

Un profil d'image de démarrage est conçu pour améliorer les performances du système en guidant l'optimisation du code au moment de la compilation. Il s'agit essentiellement d'un ensemble de données qui informe le système sur les parties du code les plus fréquemment utilisées pendant le processus de démarrage et par les composants principaux du système. Ces informations permettent à l'environnement d'exécution du système de compiler et d'optimiser de manière préemptive ce code critique, ce qui réduit les temps de démarrage, accélère le lancement des applications et améliore la réactivité globale du système.

Pour en savoir plus sur les profils d'image de démarrage, consultez la section Profils d'image de démarrage.

Données de profil d'image de démarrage

Les profils d'image de démarrage AAOS incluent les éléments suivants :

  • Profil pour le classpath de démarrage (vendor/auto/embedded/products/boot-image-profile.txt). Détermine les méthodes du classpath de démarrage à optimiser.

Exemple de contenu de profil

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;

Générer des profils d'image de démarrage

Pour profiler et générer efficacement un profil d'image de démarrage réaliste, consultez la section Générer des profils d'image de démarrage avec vos CUJ personnalisés.

Pour générer rapidement un profil d'image de démarrage spécifiquement pour des CUJ AAOS exemples, c'est-à-dire le lancement de Google Maps et de Google Play, utilisez le script art/tools/boot-image-profile-aaos-sample-generate.py. Ce script intègre les étapes décrites dans le lien susmentionné.

Premiers pas

Exécutez la commande suivante pour créer Android, lancer Cuttlefish et exécuter le script afin de générer un exemple de profil d'image de démarrage AAOS.

Créer Android

Choisissez une cible et exécutez la commande suivante (par exemple, aosp_cf_x86_64_auto-ap4a-userdebug) :

source build/envsetup.sh
lunch <target>
m

Lancer Cuttlefish

Suivez la procédure décrite dans Premiers pas pour lancer la cible Cuttlefish.

Exécuter le script

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

Facultatif : Spécifier un appareil ADB

export ANDROID_SERIAL=<your_device_serial>