Profile podstawowe przyspieszają wykonywanie kodu o około 30% od pierwszego uruchomienia, ponieważ eliminują interpretację i kompilację JIT (just-in-time) w przypadku uwzględnionych ścieżek kodu. Dzięki profilowi podstawowemu w aplikacji lub bibliotece środowisko wykonawcze Androida (ART) może optymalizować uwzględnione ścieżki kodu za pomocą kompilacji AOT (ahead-of-time), co zwiększa wydajność każdej nowej instalacji i każdej aktualizacji aplikacji. Ta optymalizacja oparta na profilu (PGO) pozwala aplikacjom optymalizować uruchamianie, zmniejszać zacięcia interakcji i poprawiać ogólną wydajność środowiska wykonawczego od pierwszego uruchomienia przez użytkowników.
Wskazówki dotyczące wydajności Compose
Compose jest rozpowszechniany jako biblioteka, a nie jako część platformy Android. Dzięki temu zespół Compose może często aktualizować Compose i obsługiwać szeroką gamę wersji Androida. Rozpowszechnianie Compose jako biblioteki wiąże się jednak z pewnymi kosztami.
Kod platformy Android jest już skompilowany i zainstalowany na urządzeniu. Biblioteki muszą być jednak wczytywane podczas uruchamiania aplikacji i interpretowane JIT w razie potrzeby. Może to spowolnić aplikację podczas uruchamiania i gdy po raz pierwszy korzysta ona z funkcji biblioteki.
Korzyści z profili podstawowych
Możesz zwiększyć wydajność, definiując profile podstawowe. Profile te określają klasy i metody potrzebne w przypadku najważniejszych ścieżek użytkowników i są rozpowszechniane z plikiem APK lub AAB aplikacji. Podczas instalacji aplikacji środowisko ART kompiluje ten krytyczny kod AOT, aby był gotowy do użycia po uruchomieniu aplikacji.
Dobra definicja profilu podstawowego nie zawsze jest prosta, dlatego Compose jest domyślnie dostarczany z takim profilem. Aby skorzystać z tej zalety, być może nie musisz nic robić. Profil podstawowy dostarczany z Compose zawiera jednak tylko optymalizacje kodu w bibliotece Compose.
Macrobenchmark
Aby uzyskać najlepszą optymalizację, utwórz profil podstawowy dla swojej aplikacji, który korzysta z Macrobenchmark do obsługi najważniejszych ścieżek użytkowników. Gdy zdefiniujesz własny profil, musisz go przetestować, aby sprawdzić, czy pomaga. Dobrym sposobem na to jest napisanie testów Macrobenchmark dla aplikacji i sprawdzanie wyników testów podczas pisania i modyfikowania profilu podstawowego.
Przykład pisania testów Macrobenchmark dla interfejsu Compose znajdziesz w przykładzie Macrobenchmark Compose.
Dodatkowe materiały
- Przewodnik po wydajności aplikacji: poznaj sprawdzone metody, biblioteki i narzędzia, które pomogą Ci zwiększyć wydajność aplikacji na Androida.
- Sprawdzanie wydajności: sprawdzanie wydajności aplikacji.
- Analiza porównawcza: porównywanie wydajności aplikacji.
- Uruchamianie aplikacji: optymalizowanie uruchamiania aplikacji.
- Profile podstawowe: informacje o profilach podstawowych.