Bitcoin

Wie Baseline Profiles die Android-Startzeit um 30 % verkürzen: Einblicke von Duolingo

Bitcoin
We slashed Android startup time by 30% with baseline profiles

Ein tiefer Einblick in die Optimierung der Android-App-Startzeit durch Baseline Profiles. Erfahren Sie, wie Duolingo mit gezielten Maßnahmen die Ladezeiten verkürzte, welche technischen Herausforderungen dabei auftraten und warum diese Technik besonders für häufig aktualisierte Apps einen großen Unterschied macht.

Die Ladegeschwindigkeit einer App hat heute einen enormen Einfluss auf das Nutzerverhalten. Niemand wartet gerne lange, bis eine Anwendung auf dem Smartphone startet – insbesondere bei beliebten und häufig genutzten Apps wie Duolingo. Die Entwickler von Duolingo haben genau dieses Nutzerverhalten analysiert und basierend auf den gewonnenen Erkenntnissen Maßnahmen ergriffen, die die Startzeit ihrer Android-App um beeindruckende 30 % reduziert haben. Als Schlüssel zur Verbesserung erwiesen sich sogenannte Baseline Profiles, die die Art und Weise verändern, wie Android beim Start einer App mit dem Code umgeht. Um zu verstehen, warum Baseline Profiles so effektiv sind, muss man den Hintergrund der Android-Kompilierung verstehen.

Android-Apps liegen zunächst als Bytecode in sogenannten Dex-Dateien vor. Bevor der Code auf dem Gerät ausgeführt werden kann, muss dieser in Maschinencode übersetzt werden. Android verfolgt dafür unterschiedliche Ansätze, darunter Just-in-time (JIT)-Kompilierung, Ahead-of-time (AOT)-Kompilierung und Profile Guided Optimization (PGO). Sie alle haben Vor- und Nachteile hinsichtlich Performance, Speicherverbrauch und Installationsdauer. Die JIT-Kompilierung ist flexibel und übersetzt Code während der Laufzeit.

Sie ermöglicht ein schnelles Update und spart Speicherplatz, erzeugt aber beim Start zusätzlichen Overhead, weil der Code erst zur Laufzeit übersetzt werden muss. AOT-Kompilierung hingegen übersetzt den gesamten Code bereits bei der Installation, was eine hervorragende Startperformance gewährleistet, jedoch oft auf Kosten lange Installationszeiten und erhöhten Speicherverbrauchs geht. PGO kombiniert beide Methoden, indem er Basierend auf einem Profil häufig genutzten Code im Leerlauf im Hintergrund kompiliert. Vor diesem Hintergrund bieten Baseline Profiles eine elegante Lösung, besonders für Apps, die sich häufig aktualisieren, wie Duolingo. Statt dass das Profil aus Nutzungsdaten der User erst in der Cloud gesammelt und später zur Verfügung gestellt wird, wird ein vordefiniertes Profil mit der App ausgeliefert.

Dieses Profil weist das System an, welche Methoden und Klassen besonders wichtig sind und schon bei der Installation Ahead-of-Time kompiliert werden sollen. Damit startet die App für jeden Nutzer direkt aus dem Stand deutlich schneller. Der Weg zur Implementierung von Baseline Profiles bei Duolingo war jedoch alles andere als trivial. Die Entwickler stießen auf eine Reihe von unerwarteten Problemen, die von technischen Bugs bis hin zu Konflikten mit Drittanbieter-Bibliotheken reichten. Eine der größten Hürden war ein Bug in der Macrobenchmark-Bibliothek, der es zunächst unmöglich machte, die Leistungsverbesserungen korrekt zu messen.

Das Team wandte sich an Experten von Google, die schnell festgestellt haben, dass die gelieferten Baseline Profiles ungültig waren. Ursache dafür war, dass die Dex-Dateien nach der Umwandlung der Profile modifiziert wurden, was zu einer ungültigen Profil-Datei führte. Die Suche nach der Fehlerquelle förderte einen Drittanbieter zutage, dessen Bibliothek die Dex-Dateien im Paketierungsprozess veränderte. Die Zusammenarbeit mit den Maintainer war zwar produktiv, jedoch gestaltete sich die Problemlösung schwierig, da sich die Probleme nicht nur auf eine Bibliothek beschränkten, sondern bei der Auslieferungsform der App als Android App Bundle (AAB) erneut ähnliche Probleme mit anderen Bibliotheken auftraten. In diesem Fall wurden Dex-Dateien ausgetauscht, was wiederum die Baseline Profiles ungültig machte.

Da die Fehlerbehebung bei den Drittbibliotheken nicht sofort Priorität hatte, setzten die Entwickler von Duolingo kreative Workarounds ein. So wurde etwa der Build-Prozess angepasst, um die Baseline Profiles nach der Modifikation der Dex-Dateien neu zu generieren. Erst dadurch konnten valide Profile sichergestellt werden und die Grundlage für tatsächliche Performance-Verbesserungen gelegt werden. Parallel verbesserten sich auch die Testmöglichkeiten: Ein Update der Macrobenchmark-Bibliothek machte es möglich, ordentliche Tests durchzuführen. Allerdings stellten die Entwickler fest, dass manche Drittbibliotheken Baseline Profiles komprimierten – was zu höherer CPU-Auslastung bei der Installation führte und damit die erreichte Performance wieder verschlechterte.

Auch hier war das Team gezwungen, in engem Austausch mit den Maintainer der Bibliotheken zu arbeiten. Nach deren Fehlerbeseitigung konnten die Benchmark-Tests endlich reibungslos laufen und belegten die signifikanten Startzeitgewinne. Die Ergebnisse dieser aufwendigen Optimierung sprechen für sich: Die Startzeit der Duolingo Android-App konnte um rund 30 % reduziert werden. Macrobenchmark-Tests zeigten Verbesserungen zwischen 25 % und 40 %. Dies wirkte sich nicht nur auf die reine Startup-Zeit aus, sondern reduzierte auch die Aktivität des JIT-Threads signifikant – von 25 % auf gerade mal 3 % der Zeit.

Diese Verbesserungen sorgen für ein spürbar flüssigeres Nutzererlebnis, weniger Verzögerungen beispielsweise bei Musiklektionen und ermöglichen sogar schnellere Adaptionen moderner UI-Technologien wie Jetpack Compose. Die Implementierung von Baseline Profiles lehrt einige wichtige Lektionen für Entwicklerteams, die ähnliche Performance-Optimierungen anstreben. Der Spagat zwischen der theoretisch einfachen Einrichtung und der praktisch herausfordernden Integration in komplexe Build-Prozesse macht deutlich, dass insbesondere das frühzeitige Einbinden von Fachexperten und das intensive Testen unverzichtbar sind. Auch sollte man niemals die Rolle von Drittbibliotheken unterschätzen. Kompatibilitätsprobleme und Bugs, die eigentlich selten auftretende App-Konfigurationen betreffen, können den Optimierungsprozess erheblich verzögern.

Daraus ergibt sich auch der wichtige Ratschlag, pragmatisch zu bleiben: Dokumentierte Workarounds zur Überbrückung von Verzögerungen bei der Fehlerbehebung sollten immer vorbereitet sein. Nur so lässt sich ein kontinuierlicher Fortschritt gewährleisten, während man parallel auf Updates der Drittanbieter wartet. Ein weiterer spannender Aspekt betrifft die Auswirkungen auf die Test- und Experimentiermöglichkeiten. Da Baseline Profiles bereits beim Installationsprozess kompiliert werden, ist das klassische A/B-Testing nur eingeschränkt möglich. Umso wertvoller sind then präzise Macrobenchmark-Tests, welche die Differenzen sauber quantifizieren und so die Performancegewinne validieren.

Abschließend lässt sich festhalten, dass Baseline Profiles für Android-Apps, insbesondere solche mit häufigen Updates und komplexer Codebasis, einen echten Gamechanger darstellen können. Sie ermöglichen von der ersten Sekunde an schnellere Ladezeiten, schonen Ressourcen und verbessern maßgeblich die User Experience – gerade für Nutzer mit weniger leistungsstarken Geräten. Die Erfolgsgeschichte von Duolingo zeigt, dass sich auch umfangreiche technische Herausforderungen mit Engagement, technischem Know-how und Geduld meistern lassen. Für Entwickler bedeutet dies: Wer seine App-Performance deutlich steigern will, sollte Baseline Profiles fest auf der Agenda haben. Und wer neugierig darauf ist, wie sich solche Herausforderungen angehen lassen und gleichzeitig mit cleveren technischen Lösungen echten Impact erzielt wird, findet bei Duolingo sogar spannende Karrieremöglichkeiten.

Die Zukunft der App-Performance liegt also in intelligenten, vorab definierten Kompilierungsprofilen, die die richtige Balance zwischen schneller Installation, geringem Speicherverbrauch und schneller Laufzeit schaffen. Baseline Profiles sind damit ein Schlüssel für bessere Android-Erlebnisse in einer Welt, in der Geschwindigkeit und Nutzerzufriedenheit entscheidende Wettbewerbsfaktoren sind.

Automatischer Handel mit Krypto-Geldbörsen Kaufen Sie Ihre Kryptowährung zum besten Preis

Als Nächstes
Ellen Miles is planting seeds of hope through guerrilla gardening
Samstag, 14. Juni 2025. Ellen Miles und die Kraft des Guerilla-Gardening: Wie grüne Oasen das Stadtbild verändern

Ellen Miles ist eine engagierte Umweltaktivistin aus London, die durch Guerilla-Gardening städtische Räume in blühende Oasen verwandelt. Ihre Arbeit fördert nicht nur das Bewusstsein für den Zugang zu Grünflächen, sondern zeigt, wie jede*r aktiv am Schutz der Natur in der Stadt teilnehmen kann.

Why Webull Corporation (BULL) Skyrocketed On Wednesday
Samstag, 14. Juni 2025. Warum die Aktie der Webull Corporation (BULL) am Mittwoch kräftig durchstartete

Die Webull Corporation sorgte mit einer starken Kursentwicklung am Mittwoch für Aufsehen. Entscheidende Partnerschaften und positive Marktbedingungen trugen dazu bei, das Anlegerinteresse deutlich zu steigern.

Trump’s next crypto play will be Monopoly-style game — Report
Samstag, 14. Juni 2025. Donald Trumps nächster Schritt im Krypto-Bereich: Ein Monopoly-inspiriertes Spiel startet durch

Donald Trump erweitert sein Engagement im Kryptowährungssektor mit einem neuen Spiel, das Elemente von Monopoly mit der Blockchain-Technologie verbindet. Die Entwicklung des Spiels zeigt Trumps zukunftsorientierten Ansatz und seine wachsende Präsenz in der Web3-Welt, trotz Herausforderungen im Markt.

Trump's crypto czar's 5-word verdict on tariff as stock market looks up
Samstag, 14. Juni 2025. Trump's Krypto-Czar David Sacks: Fünf-Wort-Urteil zu Zöllen und die Erholung der Börse

Eine ausführliche Analyse von David Sacks' prägnantem Statement zu Trumps Zollpolitik im Zusammenhang mit der jüngsten Erholung der US-Aktienmärkte, ihre Auswirkungen auf den Handel und die globale Wirtschaft unter Berücksichtigung aktueller geopolitischer Entwicklungen.

Bank of England cuts interest rates and welcomes word of US-UK trade deal
Samstag, 14. Juni 2025. Bank of England senkt Zinssätze und begrüßt Handelsabkommen zwischen USA und Großbritannien

Die Bank of England hat ihre Hauptzinssätze gesenkt und zeigt sich optimistisch hinsichtlich des neu geschlossenen Handelsabkommens zwischen den USA und Großbritannien, welches positive Impulse für die britische Wirtschaft setzen könnte. Diese Entwicklungen werden vor dem Hintergrund globaler wirtschaftlicher Unsicherheiten und geopolitischer Spannungen von großer Bedeutung.

Ask HN: Mobile devs – what do you hate about current mobile ad networks?
Samstag, 14. Juni 2025. Mobile Werbenetzwerke im Fokus: Herausforderungen und Wünsche der App-Entwickler

Ein tiefgehender Einblick in die Herausforderungen, die Mobile-App-Entwickler mit aktuellen Werbenetzwerken erleben. Analysiert werden Transparenz, Benutzerfreundlichkeit, Datenschutz und Monetarisierungsstrategien aus Entwicklerperspektive.

Sofie: NRK's open-source web based system for automating live TV news production
Samstag, 14. Juni 2025. Sofie: Das Open-Source-Websystem für die Automatisierung von Live-TV-Nachrichten bei NRK

Entdecken Sie, wie Sofie, das Open-Source-Websystem von NRK, die Produktion von Live-TV-Nachrichten revolutioniert und Automatisierung effizient und benutzerfreundlich gestaltet.