Maybe we should test our ISO if there is any performance degradation with
"-Os" when we compile all the binaries (including the kernel) with this
flag.

Rohit

On Sun, May 22, 2011 at 11:57 AM, Rohit Joshi <[email protected]> wrote:

> Hi Christophe,
>
> I think we had this discussion on "-Os" Vs "-O2" (size vs speed) long time
> back for super-fast booting. I believe we can reach midway if Kernel
> compilation is done using "-O2" and the rest is compiled with "-Os".
>
>  From phoronix , you can see that in some cases "-Os" works better in
> performance than "-O2" (
> http://global.phoronix-test-suite.com/index.php?k=profile&u=staalmannen-231-8340-1312).
> The reason is that "-Os" produces small executables and the CPU takes lesser
> time to move data around cache. The new intel chips, however, now contain
> pre-caching to improve performance gains for "bigger" executables produced
> by "-O2". So, as Alexander points out that playing with cache size
> parameters may be really helpful too.
> It is also possible that some binaries may not compile with "-Os".
>
> My take is to use a midway: compile kernel with "-O2"; compile rest (as
> long as the binary compiles) with "-Os"
>
> Useful links (from google) for you to decide:
> * http://gcc.gnu.org/onlinedocs/gcc-3.3.1/gcc/Optimize-Options.html
> *
> http://phoronix.com/forums/showthread.php?29090-CompilerDeathMatch-surprising-results/page2
>
> Thanks
>
> Rohit
>
> On Sun, May 22, 2011 at 3:50 AM, Alexander Medvedev <[email protected]>wrote:
>
>> >Less perf on what ?
>>
>> Runtime performance. -Os disables code and data alignment (-falign-*),
>> that saves space, but decreases speed on CPUs without efficient unaligned
>> access.
>> According to google and some testing not long ago on Phoronix and
>> linux.org.ru, it is a compromise between ~10% saved space or 10% of
>> performance.
>>
>> A small suggestion - try playing with LTO and l1/l2 cache size
>> parameteres.
>>
>
>

Reply via email to