Messages in this thread |  | | | Date | Fri, 01 Jun 2012 12:56:55 -0500 | | From | Daniel Santos <> | | Subject | Re: [PATCH v2 1/3] [RFC] Generic Red-Black Trees (performance notes) |
| |
I've done a bit more analysis of the generated code of kernel/sched/fair.c (patched) under three versions of gcc.
gcc-4.5.3 * 48 bytes larger * one instance of a (const_flag & ENUM_VALUE) fails to compile out * compare function not inlined
gcc-4.6.2 * same size * ANDed constants compiled out * compare function inlined
gcc-4.7.0: * 64 bytes smaller - __enqueue_entity() reduced by 16 bytes (2 byte smaller and saved some padding, so essentially the same), I'm not sure where the other 48 bytes came from, I'm guessing just alignment changes from using different registers (smaller opcodes).
So in summary, the results on 4.5 are worse, but not "horrible". The problems are fixed in 4.6 and later.
There's still lots of other scenarios to test.
Daniel
|  |