I made the switch a few weeks ago to “ART” (Android RunTime) from Dalvik on my AT&T LG G3. All I have to say is HOLY COW… I think I have nearly doubled my battery life. I normally unplug my phone around 7:30 AM and by the time I plug it back in at night around 11:30 PM I would be down to 15% battery life. Right now it is about 1:45 AM and I am still sitting pretty at 54% battery! I am thrilled to say the least.
Additionally, switching to the ART runtime, if benchmarks can be believed will improve performance anywhere from 5% – 100% depending on the type of processor load of the application.
ART was introduced in KitKat (android 4.4). Early adopters noted some bugs with some applications breaking however most folks noted that by Android 4.4.2 everything seemed to be function fine, hence I made the plunge. Thus far I have noted no anomalies although I haven’t finished testing all of my applications.
What is this magical secret sauce that Google has come up with? Here is the short of it…
Android is different from other operating systems in that all applications actually run in their own virtual machine environment. If you are unfamiliar with the concept of a virtual machine, basically your can think of it as an “emulated” computer running on a physical computer. So everything, from storage, to processor, to memory, to network connections… that an application needs to run is actually running on a set of emulated hardware. This is in part why android is so versatile. Ever wonder why Intel can make one type of chip and Samsung can make another and most all of your apps will run on both? The use of virtual machines for application processing is in large part why.
However, whenever you run in a virtual environment you inherently do things less efficiently.
Dalvik was THE VM platform of choice for all iterations of android until now. Google has cooked up a new type of VM with ART that is significantly more efficient than Dalvik. Where do all of the efficiency gains come from? In short, all over the place, but one of the biggest changes is the way code is compiled. Dalvik relied on something called “JIT” (Just In Time) compilation… which means every time you fire up an application the code has to be compiled for your platform. ART however compiles the code ahead of time and keeps it stored on your system. So with ART, applications will take a bit longer to install and will take up a bit more space. However, they will launch faster and perform better, in large part because with ART, they are compiled specifically for your processor architecture. So if your device uses a Samsung processor, the code will be optimized to run on ARM, if Intel, then x86, etc. etc. As a result, this greatly reduces inefficiency in how the application code is processed. The result? Greatly improved performance, device boot time, and battery life.
When Android L (5.0) is launched across all current-generation devices, ART is going to be the default runtime environment and Dalvik will go the way of the dinosaur.
1. Go to the Settings Menu
2. About tablet
3. Software Information
4. Click on Build-Number repeatedly until you get a message saying “You are now a developer” – This unlocks a new menu in your settings called “Developer Options”
5. Go to the developer options menu.
6. Tap “Select Runtime”
7. Select “Use ART” and then click “Yes” on the warning that comes up.
8. Your tablet will reboot and it will take several minutes (up to an 30+ minutes depending on how many apps you have installed) to start backup. The reason for this is that your tablet is recompiling all of your applications to use the new ART runtime.
9. Enjoy a faster tablet and greatly enhanced battery life.
UPDATE:This works just fine on my AT&T variant of the LG G3. However when I did this on a friend’s Verizon LG G3 it caused the “phone” service to run constantly in the background which I think is a bug with ART + Phone APK files for Verizon. In short, the phone ran hot all the time and consumed battery extremely quickly. Right now I would only advise running this on AT&T LG G3 phones.
NOTE: I also run my phone at about 50% brightness most of the day and I also keep “battery saver” on most of the time. I have noticed pretty much no-slowdown for 90% of what I do by running in battery saver mode and 50% screen brightness is a bit more than enough for my indoor viewing experience. This usually nets me somewhere between a day or two days worth of use. I also don’t have a lot of apps running that need to constantly update (no twitter, facebook, social games, etc.) so your experience may vary.
I had previously been apprehensive about switching my Verizon Droid Maxx to ART, since you stated that the VZW G3 ran hot, etc., but gave it a go a couple of days ago. Very impressed with the difference it has made so far. I immediately noticed how snappy everything ran; it’s buttery smooth. Reboot took about 15 minutes.
Just like your G3, my battery life is exponentially better. My eyes are terrible, so I run my device at full brightness all day. The Maxx has a 3500 mAh and lasted a good day and a half anyway; ART only serves to enhance that.
Excellent write-up on its benefits. Glad I tried it. I’ll update if I notice any negative side effects.
Glad it worked out! I am glad that some devices can benefit from the new Runtime even though we don’t all have Lollipop yet!
Hy, i have also a AT&T LG G3 and i had problems. Phone turns off and it’s not so fast as i thought. I swiched now to ART mode and i hope it will fix the problems.
Also the battery it last me from 7:00 in the morning until 15:00 , ( i am using 4G non stop, mail, facebook and i call a lot in the day).
Thank you for the post and i will came back with the news about how it’s working after.
Hey, Adrian, I make the same use to my g3 as you. Call alot, unplug it about 7 AM and plug back on the charger about to 4 PM. I’ve changed to ART and it took a while to reboot and updated some applications, I have no idea which apps it has been updating as I didnt find any change on the apps installed initially, my G3 is the D855P model, stock rom 4.4.2, non rooted.
What pros and cons do you have about changing to ART? I will test it for a full week and see if it fix my 4g connection issues. I dont know why, everytime I try to connect 4g the process com.android.phone crashes. I tried to wipe and factory restory already, but nothing has fixed it.
Anyways, I hope to have luck and see my baby running good again π
All of the apps aren’t updated per se’ but they have to be (forgive my ignorance here as I am making a hash of this) at least partly compiled. You are changing the runtime environment from “jit” = just in time compilation to a run time where apps are either partially or wholly compiled for your platform already. This is one of the main areas the performance improvements come from. That is why you get 100+ app updates and the process takes so long. Every installed APK has to be compiled. Hope this makes some sense π