Профиль загрузочного образа предназначен для повышения производительности системы за счёт оптимизации кода во время компиляции. По сути, это набор данных, информирующих систему о том, какие части кода чаще всего используются в процессе загрузки и основными компонентами системы. Эта информация позволяет среде выполнения системы превентивно компилировать и оптимизировать этот критически важный код, что приводит к ускорению загрузки, более плавному запуску приложений и повышению общей отзывчивости системы.
Дополнительную информацию о профилях загрузочных образов см. в разделе Профили загрузочных образов .
Данные профиля загрузочного образа
Профили загрузочного образа 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.
Для быстрой генерации профиля загрузочного образа специально для примеров AAOS CUJ, запускающих 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
Запуск каракатицы
Следуйте инструкциям по запуску цели «Каракатица».
Запустить скрипт
python3 art/tools/boot-image-profile-aaos-sample-generate.py
Необязательно: укажите устройство ADB
export ANDROID_SERIAL=<your_device_serial>