Will Verduzco · Jan 11, 2012 at 06:00 pm

MythBusters XDA Edition: “Optimized” Compiler Toolchains

If you’ve compiled an Android kernel or two, you have undoubtedly noticed that there are more than a few cross-compiler toolchains at your disposal. Although Google offers its own toolchain as part of the Android Native Development Kit (NDK), several aftermarket options exist—many of which promise higher target device performance.

So what’s a new developer to do? Since kernel devs ultimately wish to eke out as much device performance as humanly possible, choosing the wrong toolchain could potentially have disastrous results. And without any firm guidance as to which toolchains work best, it’s easy to get lost in the available choices.

To alleviate this problem, XDA Recognized Developer Ezekeel decided to run extensive benchmarks with four popular toolchains. And much to the content of the obsessed, he has even tested the toolchains with and without the popular flags -fgcse-after-reload and -ftree-vectorize. In the words of the developer:

I have read of lot of praise for these optimized TC from different kernel developers that all claim that these do much better than the offcial Google TC, however to my knowledge up until now nobody actually took the effort of investigating the effect of the TC and most devs simply assume that a TC marketed as optimized by their creators is actually performing better.

So to investigate the performance of the different TC, I compiled a kernel (GLaDOS kernel for ICS) with the following four different TC:

1. Offical Google arm-linux-androideabi-4.4.3 (part of android-ndk-r7)
2. CodeSourcerey arm-2011.03-41-arm-none-linux-gnueabi
3. Linaro android-toolchain-eabi-linaro-4.6-2011.11-4-2011-11-15_12-22-49-linux-x86
4. Mjolnir arm-eabi-4.6-mjolnir-20111006

Also while I was at it, I investigated the effect of the compiler flags ‘-fgcse-after-reload’ and ‘-ftree-vectorize’ (see https://github.com/Ezekeel/GLaDOS-ne…f32ee#comments) by compiling a version with the CS TC which did not include these flags.

I performed the following two tests for the kernels:

Test I: Measured the bootup time including a rebuild of the Dalvik-cache after a wipe (2 times).
Test II: Performed a benchmark with AnTuTu Benchmark v2.4.3 including CPU/memory, 2D and 3D graphics (3 times).

Long story short, the allegedly optimized toolchains yielded no real world performance gains. At this point, you’re probably salivating at the mere thought of viewing the benchmarks. To get started, continue on to the original thread and join in on the discussion.


_________
Want something on the XDA Portal? Send us a tip!
TAGS:

Will Verduzco

willverduzco is an editor on XDA-Developers, the largest community for Android users. Will Verduzco is the Portal Administrator for the XDA-Developers Portal. He has been addicted to mobile technology since the HTC Wizard. But starting with the Nexus One, his gadget love affair shifted to Google's little green robot. He is also a Johns Hopkins University graduate in neuroscience and is now currently studying to become a physician. View willverduzco's posts and articles here.
Aamir Siddiqui · Jul 7, 2015 at 10:39 am · no comments

Sony: The OEM You Want To Save

In our recent Discuss article, we asked you readers on which OEM you would like to help. While the answers we received were varied, a lot of these responses and top comments stood out for helping one OEM: Sony. Some excerpts from our discussion are as below: And many more follow suit. Needless to say, many believe that Sony Mobile as a company is great and is worth saving. And all of these would be happy to hear that Sony will...

XDA NEWS
Jimmy McGee · Jul 7, 2015 at 06:00 am · 2 comments

How to Lock and Protect Your Apps – XDA Xposed Tuesday

The smartphone revolution has passed. Everybody has mobile apps. Some of these apps have access to very important information. Your mobile banking app gives you access to your money. Your Dropbox app could hold your secret plans to world domination. These apps should have greater protection than your Trivia Crack game. In this episode of XDA Xposed Tuesday, XDA TV Producer TK reviews an Xposed Module that enables you to control access to your apps. XDA Senior Member defim created...

XDA NEWS
Mario Tomás Serrafero · Jul 6, 2015 at 12:49 pm · 18 comments

Which OEM Would You Like to Help?

Most manufacturers have moments of greatness and moments of decadence, and in the past few years we've some of our favorite companies' tables turned. Some are stagnating, some are struggling, some lack direction. Despite this, we often hold them dear to our hearts. Many of them could use a hand, be it with design, marketing, or other tasks. If you could help out an OEM and take it back to its golden days, which one would it be?

DISCUSS
Share This