serviceability agent : problems when using gcc LTO (link time optimization)
Aleksei Voitylov
aleksei.voitylov at bell-sw.com
Tue Jan 14 17:54:36 UTC 2020
On 14/01/2020 19:57, Baesken, Matthias wrote:
> Hello Magnus and Aleksei, thanks for the input .
>
> The times you provided really look like they make a big difference at least for people often building minimal-vm .
> Guess I have to measure myself a bit (maybe the difference is not that big on our linux s390x / ppc64(le) ) .
>
>> If the change to enable lto by default is proposed, what would be the
>> recommended strategy for development?
>>
> Probably we should a) do not enable it by default but just make sure it can be enabled easily and works for the minimal-vm
That would be welcome. I have high hopes to LTO the VM some time by
default, and the tendency observed is that the compiler time overhead
for GCC becomes smaller. At the same time there is no reason why vendors
that invested in testing and can absorb the build time hit could provide
binaries with LTO built VMs by passing an additional option flag.
> or b) take it easy to disable it for local development.
>
> Best regards, Matthias
>
>
>
>> Magnus, Matthias,
>>
>> for me, lto is a little heavyweight for development. x86_64 build time
>> with gcc 7:
>>
>> Server 1m32.484s
>> Server+Minimal 1m42.166s
>> Server+Minimal (--with-jvm-features="link-time-opt") 5m29.422s
>>
>> If the change to enable lto by default is proposed, what would be the
>> recommended strategy for development?
>>
>> For ARM32 Minimal, please keep in mind that it's not uncommon to disable
>> LTO plugin in commodity ARM32 gcc compiler distributions, so for some it
>> does not matter what settings we have in OpenJDK. I believe there could
>> be other reasons for that on top of build time (bugs?).
>>
More information about the serviceability-dev
mailing list