Diese Website verwendet Cookies, um Ihnen ein besseres Nutzungserlebnis bieten zu können.

4 Min Lesezeit 54 mal geteilt 45 Kommentare

ART: Der Turbo von Android 4.4 KitKat

Wie kann man Android schneller machen? Zum Beispiel mit einer besseren Hardwareausnutzung beim Ausführen von Anwendungen. In KitKat hat Google zum ersten Mal eine neue Laufzeitumgebung mit dem Namen ART integriert, die optional in den Entwickleroptionen aktiviert werden kann. Wir haben ausprobiert, ob Android 4.4 damit so richtig durchstartet.

nexus 5 android 4 4 kitkat logo 01
Kann eine neue Laufzeitumgebung Android schneller machen? / © AndroidPIT

Optimierte Laufzeitumgebung

Mit der Optimierung von Android beschäftigte sich auch das französische Startup FlexyCore, das vor über einem Jahr von Google gekauft wurde. Es ist anzunehmen, dass die Früchte der Arbeit von FlexyCore mit in KitKat eingeflossen sind, aber genauso wie Google die Übernahme nicht an die große Glocke gehängt hat, wurde ART bislang nur in einer kurzen Notiz auf Android Source vorgestellt. Ist die neue Laufzeitumgebung also (noch) nichts Besonderes, oder ein unterschätztes Feature von Android 4.4?

Android Runtime

Die Android Runtime, kurz ART, ist die Weiterentwicklung von Dalvik, der virtuellen Ausführumgebung, die momentan in Android zum Einsatz kommt. Die allermeisten Anwendungen für Android sind in der Plattform-unabhängigen Programmiersprache Java geschrieben. Die Dalvik Virtual Machine (DVM) bereitet als Schnittstelle zwischen dem kompilierten Quellcode und dem Prozessor die Anwendung maschinenlesbar auf, so dass sie auf der Hardware des Gerätes ausgeführt werden kann.

Der Optimierungsansatz von ART ist folgender: Wird der Quellcode maschinennäher kompiliert, kann er vom Prozessor schneller ausgeführt werden, was den positiven Nebeneffekt hat, dass durch weniger CPU-Zeit der Akku geschont wird. Die verbaute Hardware-Power wird besser genutzt, die Performance steigt. Theoretisch ist eine Steigerung um das doppelte möglich, was aber nicht doppelt so hohe Frameraten bei Spielen bedeutet, Berechnungen brauchen aber weniger Zeit.

art dalvik laufzeit kitkat turbo 02
In einem synthetischen Benchmark liegt ART beim Ausführen einer Sortierfunktion fast durchweg vor Dalvik. / © XDA-Developers

ART aktivieren

In den Entwickleroptionen von Android 4.4 KitKat kann die Programmbibliothek für die Laufzeit festgelegt werden, standardmäßig ist Dalvik (libdvm.so) ausgewählt. Nach dem Aktivieren von ART (libart.so) muss das Gerät neu gestartet werden und es erfolgt ein System-Update, bei dem alle Apps noch einmal installiert werden. Das dauerte bei meinen knapp über 130 Apps gute fünf Minuten, in etwa so lang wie das System-Update beim erstmaligen Einrichten des Nexus 5.

art dalvik laufzeit kitkat turbo 03
In den Entwickleroptionen von Android 4.4 KitKat kann ART statt Dalvik aktiviert werden. / © AndroidPIT

Vorteile und Nachteile

Nach der Aktivierung ist das System super schnell, aber das war es eigentlich schon vorher. Im AnTuTu-Benchmark erreicht das Nexus 5 mit ART ein paar Punkte weniger, aber die Aussagekraft dieser Werte sei dahingestellt. Ein Geschwindigkeitsvorteil ist rein subjektiv und gefühlt, aber meiner Meinung nach nicht messbar.

art dalvik laufzeit kitkat turbo 1
AnTuTu-Benchmark mit dem Nexus 5, links: Dalvik, rechts: ART. / © AndroidPIT

Ein Nachteil ist dagegen sofort auszumachen: Unter ART belegen die Anwendungen mehr Speicherplatz. Android Police errechnete einen Durchschnitt von 20 Prozent Zuwachs, in meinem Fall waren es gute 25 Prozent. Je nach Anzahl der installierten Apps und Gesamtspeicherplatz kann dieser Effekt vernachlässigt werden oder sich zum Nachteil auswirken. Der Hintergrund: Wird die Laufzeitumgebung ART verwendet, werden Anwendungen schon bei der Installation vorkompiliert, man spricht auch vom Ahead-Of-Time (AOT). Im Gegensatz zum Just-In-Time von Dalvik ist für diese maschinennähere Kompilierung mehr Speicherplatz erforderlich, dafür können die Anwendungen später schneller gestartet und ausgeführt werden.

Nicht alle Apps sind mit ART kompatibel, ich konnte aber nur Probleme mit dem WhatsApp Messenger feststellen, der sich mit der neuen Laufzeit nicht installieren lässt.

art dalvik laufzeit kitkat turbo 04
WhatsApp und ART sind anscheinend (noch) nicht kompatibel. / © AndroidPIT

Gerne würde ich ART bescheinigen können, dass der Akkuverbrauch tatsächlich sinkt, sollte der Effekt aber wirklich eintreten, so ist er ebenso wie die gesteigerte Performance nicht spürbar. Nach der Umstellung kam ich in 15 Stunden auf 4 Stunden Displayzeit, das entsprach aber in etwa dem Vorher.

art dalvik laufzeit kitkat turbo 05
Eine Verbesserung der Akkulaufzeit war unter ART nicht festzustellen. / © AndroidPIT

Fazit

ART hört sich für mich in der Theorie faszinierend und zukunftsweisend an, über kurz oder lang wird Google ganz auf die neue Laufzeitumgebung setzen. In der Praxis war mit dem Nexus 5 kein wirklicher Geschwindigkeitsvorteil festzustellen: das Gerät ist ohnehin sehr schnell und die Leistung auch mit Dalvik hervorragend. Ein Zugewinn an Akkuleistung war nicht messbar. Den gestiegenen Speicherplatzbedarf kann ich verschmerzen, ebenso wie den Verlust von WhatsApp, andere Nutzer werden das anders bewerten. Instabilitäten kann ich keine nennen, empfehlen würde ich die Umstellung aber noch nicht. Warten wir ab, wie sich die neue Laufzeitumgebung entwickelt, vielleicht gibt es ja schon mit KitKat 4.4.1 weitere Neuerungen.

54 mal geteilt

45 Kommentare

Neuen Kommentar schreiben:

  • Da steht bei mir "OpenGL-Spuren aktivieren"... is ja auch egal.


  • direkt unter "Aktionen nicht speichern", 4tletzter Eintrag.


  • Bei mir ist da nichts solches, nur unter Menü "Keine Aktivitäts-Log", "Hintergrundprozesse..." und "Alle als anzeigen"


  • Ich sehe grad meinen Kommentar vor 5 Monaten und muss den jetzt korrigieren.
    Auf Cyanogenmod 11 nightly 4.4.3 funktioniert ART mittlerweile sehr gut.
    Wesentlich schneller mit dem neuen Milestone release M7 von dieser Woche.

    @gerri = in Entwickleroptionen ganz nach unten scrollen, da ist die Laufzeit.


  • Ich finde die Einstellung "Laufzeit festlegen" auf meinem S 4 mit 4.4.2 gar nicht. Entwickleroptionen sind freigeschaltet, Gerät ist gerootet...


  • Ich habe ART auf dem Samsung S3 Mini aktiviert (kitkat .4.4.2/Mod carbon)...der cahce wird umgeschrieben, dauerte 15min, ich habe das Gefühl das ART zzt. Dalvik noch nicht ersetzen kann, hänger, Abstürze, teils langsamer, teils wesentrlich flotter je nach app..


  • Whatsapp funktioniert auf dem Nexus 5 mit Android 4.4.1 und ART problemlos! Auch Funktionen von Tasker (z.B. Keaguard umgehen), die vorher immer wieder Probleme hatten laufen inzwischen sauber.


  • Leute... womit wurde das getestet? Ein Benchmark? Könnte es sein das dieser mit dem NDK (native development kit, also c/c++) geschrieben wurde? Das macht auch mehr sinn wenn man RAM und CPU testen will als mit Java. Heißt auf gut Deutsch das der Benchmark nix vorteilhaftes testen kann, weil er noch genau so läuft wie eh und je. Wie viel das auf nicht native Apps ausmacht ist damit also ungeklärt.


  • Leider funktioniert Titanium Backup nicht mit ART :-(


  • Falls ihr Art gerne nutzen wollte aber nicht auf Whatsapp verzichten wollt:

    Installiert die whatsapp version 2.11.50 (aktuellste ist 2.11.135) einfach per APK und Whatsapp läuft dann auf ART ohne abstürze!


  • Vielleicht ein doofe Frage, aber... @Jakob Straub: Werden die apps wirklich neu runtergeladen und installiert, oder wird einfach der Dalvik-Cache gelöscht und sozusagen durch einen ART-Cache ersetzt?


  • Danke Jakob, dann werde ich es wohl lassen, was mir nicht weh tut, da das Gerät ja sowieso perfekt läuft. :-)


  • Kleine Information zu WhatsApp, ART und Dalvik. WhatsApp und ART werden wohl solange nicht zusammen funktionieren, bis ART zum Standard unter Android wird. Alle WhatsApp-Nutzer sollten momentan ART nicht aktivieren.

    http://www.reddit.com/r/Android/comments/1qfp0o/whatsapp_wont_work_on_art_until_its_the_default/


  • wie kommts, dass das bessere nexus 5 im antutu gegen meinen htc one mit 26000 abstinkt?


  • Man nimmt mit ART also der virtuellen Maschine etwas Arbeit ab sozusagen. kann man das so verstehen?


  • Habe mir auch einen Nexus 5 zugelegt. Finde das Gerät echt super schön und toll, alles läuft flüssig, sieht gut aus und liegt trotz der Größe gut in der Hand, hatte früher den S3 Mini gehabt. Ich würde gerne ART bei mir ausprobieren, ich benutze aber Wahtsapp täglich. Wird dies sich dies demnächst ändern oder wird Whatsapp nicht an der Kompatibilität dran arbeiten...?


    •   50

      ART ist derzeit für Entwickler wichtig. Die Nexus-Geräte sind primär als Entwickler-Devices ausgelegt. Für den täglichen Einsatz würde ich die ART-Engine noch nicht empfehlen. Wenn sie zum Standard wird, werden normale Anwender davon nichts mitbekommen und die weitverbreitesten Apps keine Probleme machen..

      Zudem halte ich die ganze Diskussion um Perfomanceverbesserungen für misverständlich. Auch das ist in erster Linie für Entwickler wichtig. Ein normaler Anwender erwartet sicher mehr, als es in der Praxis ausmacht. Dazu gibt es einfach zuviele Bausteine (nicht nur die CPU), die für die empfundene Perfomance verantwortlich sind.

      Benchmarks sind, wie der Artikel zeigt, nicht ohne weiteres aussagekräftig. Dazu muss man genau wissen, wo und wie der Benchmark misst

      Außerdem hat Google Zoff mit Oracle, dem Lizenzinhaber von Java, weil Oracle Dalvik als Java-Abwandlung sieht und Lizenzgebühren verlangt. Mit ART könnte Google sich auch aus dieser Klemme befreien wollen. Und das ganze Getue um Perfomanceverbesserungen ist nur Marketinggebrüll.


  • Was testest du sowas auch auf einen Nexus 5 ??

    Ich mein, wenn ich n 12 Core PC mit je 4GHz und 32GB Arbeitsspeicher nehme und dann schaue ob die Anwendungen auf Linux 32Bit oder Linux 64Bit schneller laufen oder nicht wird da auch keine Sau einen Unterschied merken. (Ich fürchte das wird bei so einer Hardware schon bei Linux zu Windows schwer.)

    Warte mal bis 4.4 für sowas wie das S2, also für Geräte mit Dual Core um die 1GHz und Arbeitsspeicher um die 512MB - 1GB umgesetzt ist. Dann wird sich zeigen was ART wirklich noch rausholen kann. Und da wird sich auch zeigen was der Speicherplatz Mehrverbrauch wirklich ausmacht.


  • Ähm, und wie war das nochmal mit der Zeit, die das Gerät bei ART zum Aufstarten braucht? 7-12 Minuten, oder?

Zeige alle Kommentare

Diese Website verwendet Cookies, um Ihnen ein besseres Nutzungserlebnis bieten zu können. Mehr dazu