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>
mLancer 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.pyFacultatif : Spécifier un appareil ADB
export ANDROID_SERIAL=<your_device_serial>