[Dev] Add -mtune option to global CFLAGS on AArch64

Nikolai Bozhenov n.bozhenov at samsung.com
Mon Oct 5 10:17:48 GMT 2015


Hi!

I think we should add an -mtune option to the global CFLAGS since the vast
majority of AArch64 CPUs are either Cortex-A53, Cortex-A57 or a big.LITTLE
combination of them. And I believe that a proper option to be added is
-mtune=cortex-a57.cortex-a53.

My opinion is based on the performance results I got building Spec2006 with
Tizen toolchain and running it on Juno board (which is equipped with a
big.LITTLE CPU). I tried options -mtune=cortex-a53, -mtune=cortex-a57 and
-mtune=cortex-a57.cortex-a53. Then, I executed the benchmarks separately 
on A53
and A57 cores. Here are the results:

     | config        | INT/a53 | FP/a53 | INT/a57 | FP/a57 |
     |---------------+---------+--------+---------+--------|
     | O2-a53        |   -0.0% |  -0.0% |   -0.0% |  -0.0% |
     | O2-a57        |   -0.0% |  +0.5% |   -0.5% |  -2.1% |
     | O2-a57.a53    |   +0.5% |  +0.3% |   +0.8% |  +1.5% |

As you can see, the code compiled with -mtune=cortex-a57.cortex-a53 is 
faster
than with any other tuning options. Surprisingly, it is even faster on 
an A53
core than the code compiled with -mtune=cortex-a53, and faster on a A57 core
than the code compiled with -mtune=cortex-a57.

Thanks,
Nikolai Bozhenov



More information about the Dev mailing list