Профили загрузочного образа

Профиль загрузочного образа предназначен для повышения производительности системы за счет оптимизации кода на этапе компиляции. По сути, это набор данных, который информирует систему о том, какие части кода наиболее часто используются в процессе загрузки и основными компонентами системы. Эта информация позволяет среде выполнения системы заблаговременно компилировать и оптимизировать этот критически важный код, что приводит к более быстрой загрузке, более плавному запуску приложений и повышению общей отзывчивости системы.

Для получения дополнительной информации о профилях образов загрузки см. раздел «Профили образов загрузки» .

Данные профиля загрузочного образа

В профили загрузочных образов AAOS входят следующие:

  • Профиль для пути к загрузочным классам ( vendor/auto/embedded/products/boot-image-profile.txt ). Определяет, какие методы из пути к загрузочным классам будут оптимизированы.

Пример содержимого профиля

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;

Создание профилей загрузочных образов

Для эффективного профилирования и создания реалистичного профиля загрузочного образа обратитесь к разделу «Создание профилей загрузочных образов с использованием ваших пользовательских CUJ».

Для быстрого создания профиля загрузочного образа специально для примеров CUJ-файлов AAOS, запускающих Google Maps и Google Play, используйте скрипт art/tools/boot-image-profile-aaos-sample-generate.py . Этот скрипт включает в себя шаги, описанные по указанной выше ссылке.

Начните

Выполните следующие действия, чтобы собрать Android, запустить Cuttlefish и запустить скрипт для генерации образца загрузочного образа AAOS.

Собрать Android

Выберите целевую платформу и выполните следующую команду (например, aosp_cf_x86_64_auto-ap4a-userdebug ):

source build/envsetup.sh
lunch <target>
m

Запуск каракатицы

Следуйте инструкциям в разделе « Начало работы» , чтобы запустить целевой объект Cuttlefish.

Запустите скрипт

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

Необязательно: укажите устройство ADB.

export ANDROID_SERIAL=<your_device_serial>