Re: Optimize lto location stremaing

2015-03-29 Thread Jan Hubicka
> On Sun, Mar 29, 2015 at 07:47:18AM +0200, Jan Hubicka wrote: > > Hi, > > I actually got idea how to make partitioning safe for named labels w/o > > going the difficult > > route of makeing them part of symbol table. Will look into that tonight or > > tomorrow. > > > Also there's a juicy ICE wi

Re: Optimize lto location stremaing

2015-03-29 Thread Jan Hubicka
> > Unfortunately the proper fix did not make it to the mainlie (it probably > > will > > next stage1). Building kernel is however important. Can you please fill it > > in > > and mark it as a regression? I think I will implement a hack and track > > everything > > that refers user named labels

Re: Optimize lto location stremaing

2015-03-29 Thread Andi Kleen
On Sun, Mar 29, 2015 at 07:47:18AM +0200, Jan Hubicka wrote: > Hi, > I actually got idea how to make partitioning safe for named labels w/o going > the difficult > route of makeing them part of symbol table. Will look into that tonight or > tomorrow. > > Also there's a juicy ICE with that worked

Re: Optimize lto location stremaing

2015-03-29 Thread Andi Kleen
> Unfortunately the proper fix did not make it to the mainlie (it probably will > next stage1). Building kernel is however important. Can you please fill it in > and mark it as a regression? I think I will implement a hack and track > everything > that refers user named labels and force it to par

Re: Optimize lto location stremaing

2015-03-28 Thread Jan Hubicka
Hi, I actually got idea how to make partitioning safe for named labels w/o going the difficult route of makeing them part of symbol table. Will look into that tonight or tomorrow. > Also there's a juicy ICE with that worked around: > > /home/andi/lsrc/linux/drivers/scsi/bfa/bfa_ioc.c: In functi

Re: Optimize lto location stremaing

2015-03-28 Thread Jan Hubicka
> It doesn't build at all currently. The old problem with &&label jump table > initializers being spread incorrectly over partitions is back again, causing > the BPF interpret to throw a lot of > > .tmp_vmlinux1.ltrans31.ltrans.o:(.data+0x32268): undefined reference to > `.L3' > > I thought you

Re: Optimize lto location stremaing

2015-03-28 Thread Andi Kleen
On Sun, Mar 29, 2015 at 12:19:11AM +0100, Andi Kleen wrote: > > I think this was the last major offender for Chromoim/Libreoffice and > > Firefox. > > (Modulo the fact htat chromium needs 9GB for WPA. There seems not be much of > > low hanging fruit - chromium needs a lot of trees to be streamed i

Re: Optimize lto location stremaing

2015-03-28 Thread Andi Kleen
> I think this was the last major offender for Chromoim/Libreoffice and Firefox. > (Modulo the fact htat chromium needs 9GB for WPA. There seems not be much of > low hanging fruit - chromium needs a lot of trees to be streamed in that will > hopefully be tracked by early debug soon.) What is the st

Re: Optimize lto location stremaing

2015-03-26 Thread Jan Hubicka
Hello, here is updated patch I intend to commit after bootstrap/regtest on x86_64-linux and some additional testing on Chromium/libreoffice (it works on Firefox). I turned the cache into class. I tried to avoid global variable, but ended up with the pointer to current cache because the use in ipa-

Re: Optimize lto location stremaing

2015-03-26 Thread Jan Hubicka
> > > > + lto_apply_location_cache (); > > + > > Please add a comment here. It might be possible to write a Will do. > lto_location_cache_decl_source_location (TYPE_NAME (t1)) that > looks if the location is in the cache and otherwise falls back to > DECL_SOURCE_LOCATION. That would be kind

Re: Optimize lto location stremaing

2015-03-26 Thread Richard Biener
On Wed, 25 Mar 2015, Jan Hubicka wrote: > Hi, > linemap is optimized for situation where parser enters positions into it in > source order. > LTO does not work this way - it attach locations to trees and reads them more > or less > randomly. This results in large memory use of linemaps, slow loo

Re: Optimize lto location stremaing

2015-03-25 Thread Jan Hubicka
> Jan Hubicka writes: > > > > Bootstrapped/regtested x86_64-linux, the patch saves about 1GB of locators > > for chromium > > and 400MB for firefox LTO. > > Great. On my LTO builds linemap was always high up in the profiles too. Yep, these was always high. I am re-running some profiles now. I

Re: Optimize lto location stremaing

2015-03-25 Thread Andi Kleen
Jan Hubicka writes: > > Bootstrapped/regtested x86_64-linux, the patch saves about 1GB of locators > for chromium > and 400MB for firefox LTO. Great. On my LTO builds linemap was always high up in the profiles too. -Andi -- a...@linux.intel.com -- Speaking for myself only

Optimize lto location stremaing

2015-03-25 Thread Jan Hubicka
Hi, linemap is optimized for situation where parser enters positions into it in source order. LTO does not work this way - it attach locations to trees and reads them more or less randomly. This results in large memory use of linemaps, slow lookups (that are critical for WPA stremaing) and as i