* Dropping CONFIG_REORDER on x86-64 for 2.6.22
@ 2007-04-19 11:54 Andi Kleen
2007-04-19 14:27 ` Arjan van de Ven
` (2 more replies)
0 siblings, 3 replies; 9+ messages in thread
From: Andi Kleen @ 2007-04-19 11:54 UTC (permalink / raw)
To: discuss; +Cc: linux-kernel, Arjan van de Ven
Hallo,
I'm thinking about dropping the x86-64 CONFIG_REORDER for 2.6.22.
The function enabled -ffunction-sections and then tries to reorder
the executable
While that's in theory a worthy goal to save TLB/icache, in practice it
didn't really work out.
Rationale:
- It cannot be enabled in normal builds because all current lds
become very slow when they have to handle thousands of sections.
- The list of hot functions it needs - arch/x86_64/kernel/functionlist -
hasn't been changed for a long time and is already out of date.
I also don't know no sane way to keep it uptodate. Profile feedback
at runtime is not practical for the kernel and even if it's questionable
we would find a good training workload. Trying to change the manually
is imho foolish and likely not too useful anyways (if any hot function
is missed the TLB savings will be lost and it is unlikely we can
get 100% coverage)
- The workloads of the kernel are too diverse to make this concept
really work
So I'm planning to drop the option and arch/x86_64/kernel/functionlist
Comments?
-Andi
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Dropping CONFIG_REORDER on x86-64 for 2.6.22
2007-04-19 11:54 Dropping CONFIG_REORDER on x86-64 for 2.6.22 Andi Kleen
@ 2007-04-19 14:27 ` Arjan van de Ven
2007-04-19 16:59 ` Chuck Ebbert
2007-04-20 8:35 ` Måns Rullgård
2007-04-19 17:06 ` Adrian Bunk
2007-04-19 20:10 ` David Miller
2 siblings, 2 replies; 9+ messages in thread
From: Arjan van de Ven @ 2007-04-19 14:27 UTC (permalink / raw)
To: Andi Kleen; +Cc: discuss, linux-kernel
Andi Kleen wrote:
> Rationale:
> - It cannot be enabled in normal builds because all current lds
> become very slow when they have to handle thousands of sections.
>
afaik this is only ever reported on SuSE; I've not heard it on any
other distro...
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Dropping CONFIG_REORDER on x86-64 for 2.6.22
2007-04-19 14:27 ` Arjan van de Ven
@ 2007-04-19 16:59 ` Chuck Ebbert
2007-04-20 8:35 ` Måns Rullgård
1 sibling, 0 replies; 9+ messages in thread
From: Chuck Ebbert @ 2007-04-19 16:59 UTC (permalink / raw)
To: Arjan van de Ven; +Cc: Andi Kleen, discuss, linux-kernel
Arjan van de Ven wrote:
> Andi Kleen wrote:
>> Rationale:
>> - It cannot be enabled in normal builds because all current lds
>> become very slow when they have to handle thousands of sections.
>>
>
> afaik this is only ever reported on SuSE; I've not heard it on any other
> distro...
It's horribly slow on Fedora.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Dropping CONFIG_REORDER on x86-64 for 2.6.22
2007-04-19 11:54 Dropping CONFIG_REORDER on x86-64 for 2.6.22 Andi Kleen
2007-04-19 14:27 ` Arjan van de Ven
@ 2007-04-19 17:06 ` Adrian Bunk
2007-04-19 20:10 ` David Miller
2 siblings, 0 replies; 9+ messages in thread
From: Adrian Bunk @ 2007-04-19 17:06 UTC (permalink / raw)
To: Andi Kleen; +Cc: discuss, linux-kernel, Arjan van de Ven
On Thu, Apr 19, 2007 at 01:54:52PM +0200, Andi Kleen wrote:
>
> Hallo,
>
> I'm thinking about dropping the x86-64 CONFIG_REORDER for 2.6.22.
> The function enabled -ffunction-sections and then tries to reorder
> the executable
>
> While that's in theory a worthy goal to save TLB/icache, in practice it
> didn't really work out.
>
> Rationale:
>...
> So I'm planning to drop the option and arch/x86_64/kernel/functionlist
>
> Comments?
Have there been any benchmarks showing performance improvements
with -ffunction-sections?
> -Andi
cu
Adrian
--
"Is there not promise of rain?" Ling Tan asked suddenly out
of the darkness. There had been need of rain for many days.
"Only a promise," Lao Er said.
Pearl S. Buck - Dragon Seed
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Dropping CONFIG_REORDER on x86-64 for 2.6.22
2007-04-19 11:54 Dropping CONFIG_REORDER on x86-64 for 2.6.22 Andi Kleen
2007-04-19 14:27 ` Arjan van de Ven
2007-04-19 17:06 ` Adrian Bunk
@ 2007-04-19 20:10 ` David Miller
2007-04-20 1:21 ` Herbert Xu
2 siblings, 1 reply; 9+ messages in thread
From: David Miller @ 2007-04-19 20:10 UTC (permalink / raw)
To: ak; +Cc: discuss, linux-kernel, arjan
From: Andi Kleen <ak@suse.de>
Date: Thu, 19 Apr 2007 13:54:52 +0200
> So I'm planning to drop the option and arch/x86_64/kernel/functionlist
Please do so, I'm tired of editing that file every time I remove
something from the tree.
That file had alloc_skb_from_cache() in it, which nothing in the
vanilla kernel ever invoked. How did it even get there? If it was
put there for Xen's sake, that stinks because Xen is out of tree.
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Dropping CONFIG_REORDER on x86-64 for 2.6.22
2007-04-19 20:10 ` David Miller
@ 2007-04-20 1:21 ` Herbert Xu
0 siblings, 0 replies; 9+ messages in thread
From: Herbert Xu @ 2007-04-20 1:21 UTC (permalink / raw)
To: David Miller; +Cc: ak, discuss, linux-kernel, arjan
David Miller <davem@davemloft.net> wrote:
>
> That file had alloc_skb_from_cache() in it, which nothing in the
> vanilla kernel ever invoked. How did it even get there? If it was
> put there for Xen's sake, that stinks because Xen is out of tree.
I think it was included because this is a list of all functions,
so no conspiracies to see here :)
Cheers,
--
Visit Openswan at http://www.openswan.org/
Email: Herbert Xu ~{PmV>HI~} <herbert@gondor.apana.org.au>
Home Page: http://gondor.apana.org.au/~herbert/
PGP Key: http://gondor.apana.org.au/~herbert/pubkey.txt
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: Dropping CONFIG_REORDER on x86-64 for 2.6.22
2007-04-19 14:27 ` Arjan van de Ven
2007-04-19 16:59 ` Chuck Ebbert
@ 2007-04-20 8:35 ` Måns Rullgård
2007-04-20 9:37 ` [discuss] " Andi Kleen
1 sibling, 1 reply; 9+ messages in thread
From: Måns Rullgård @ 2007-04-20 8:35 UTC (permalink / raw)
To: linux-kernel; +Cc: discuss
Arjan van de Ven <arjan@linux.intel.com> writes:
> Andi Kleen wrote:
>> Rationale:
>> - It cannot be enabled in normal builds because all current lds
>> become very slow when they have to handle thousands of sections.
>>
>
> afaik this is only ever reported on SuSE; I've not heard it on any
> other distro...
Even with that option set, the full kernel build with my configuration
finishes in one minute flat on my Gentoo box. Could it be that the
linker uses enormous amounts of memory? I have 4GB so I wouldn't
immediately notice.
--
Måns Rullgård
mans@mansr.com
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [discuss] Dropping CONFIG_REORDER on x86-64 for 2.6.22
2007-04-20 8:35 ` Måns Rullgård
@ 2007-04-20 9:37 ` Andi Kleen
2007-04-20 17:24 ` Måns Rullgård
0 siblings, 1 reply; 9+ messages in thread
From: Andi Kleen @ 2007-04-20 9:37 UTC (permalink / raw)
To: discuss; +Cc: Måns Rullgård, linux-kernel
On Friday 20 April 2007 10:35:10 Måns Rullgård wrote:
> Arjan van de Ven <arjan@linux.intel.com> writes:
>
> > Andi Kleen wrote:
> >> Rationale:
> >> - It cannot be enabled in normal builds because all current lds
> >> become very slow when they have to handle thousands of sections.
> >>
> >
> > afaik this is only ever reported on SuSE; I've not heard it on any
> > other distro...
>
> Even with that option set, the full kernel build with my configuration
> finishes in one minute flat on my Gentoo box. Could it be that the
> linker uses enormous amounts of memory? I have 4GB so I wouldn't
> immediately notice.
What binutils version do you use? Maybe that particular problem is finally fixed.
Of course would still leave the other issues I listed.
-Andi
^ permalink raw reply [flat|nested] 9+ messages in thread
* Re: [discuss] Dropping CONFIG_REORDER on x86-64 for 2.6.22
2007-04-20 9:37 ` [discuss] " Andi Kleen
@ 2007-04-20 17:24 ` Måns Rullgård
0 siblings, 0 replies; 9+ messages in thread
From: Måns Rullgård @ 2007-04-20 17:24 UTC (permalink / raw)
To: Andi Kleen; +Cc: discuss, Måns Rullgård, linux-kernel
Andi Kleen <ak@suse.de> writes:
> On Friday 20 April 2007 10:35:10 Måns Rullgård wrote:
>> Arjan van de Ven <arjan@linux.intel.com> writes:
>>
>> > Andi Kleen wrote:
>> >> Rationale:
>> >> - It cannot be enabled in normal builds because all current lds
>> >> become very slow when they have to handle thousands of sections.
>> >>
>> >
>> > afaik this is only ever reported on SuSE; I've not heard it on any
>> > other distro...
>>
>> Even with that option set, the full kernel build with my configuration
>> finishes in one minute flat on my Gentoo box. Could it be that the
>> linker uses enormous amounts of memory? I have 4GB so I wouldn't
>> immediately notice.
>
> What binutils version do you use? Maybe that particular problem is
> finally fixed. Of course would still leave the other issues I
> listed.
I'm using the Gentoo default, which is 2.16.1 plus some patches. A
quick scan of the patches suggests that perhaps this one has something
to do with it:
http://sources.redhat.com/ml/binutils/2005-03/msg00847.html
--
Måns Rullgård
mans@mansr.com
^ permalink raw reply [flat|nested] 9+ messages in thread
end of thread, other threads:[~2007-04-20 17:58 UTC | newest]
Thread overview: 9+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-04-19 11:54 Dropping CONFIG_REORDER on x86-64 for 2.6.22 Andi Kleen
2007-04-19 14:27 ` Arjan van de Ven
2007-04-19 16:59 ` Chuck Ebbert
2007-04-20 8:35 ` Måns Rullgård
2007-04-20 9:37 ` [discuss] " Andi Kleen
2007-04-20 17:24 ` Måns Rullgård
2007-04-19 17:06 ` Adrian Bunk
2007-04-19 20:10 ` David Miller
2007-04-20 1:21 ` Herbert Xu
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).