We REALLY nead a NON-PCH build in JPRT NOW!

Thomas Stüfe thomas.stuefe at gmail.com
Fri Apr 3 08:53:02 UTC 2015


On Fri, Apr 3, 2015 at 8:36 AM, Stefan Karlsson <stefan.karlsson at oracle.com>

> On 2015-04-03 00:36, Kim Barrett wrote:
>> On Apr 2, 2015, at 12:06 PM, Volker Simonis <volker.simonis at gmail.com>
>> wrote:
>>> while precompiled headers (PCH) are a nice and effective way of
>>> improving hotspot build times
>> Are we sure about that?
> I'm sure that my full builds are faster with PCH, while others report the
> opposite.
> These are the hotspot builds times I got a couple of months ago:
> slowdebug
> real    1m9.998s
> user    12m0.437s
> sys    1m56.291s
> No PCH
> real    1m27.170s
> user    23m21.101s
> sys    1m43.651s
> product
> real    1m19.933s
> user    17m54.229s
> sys    2m4.508s
> No PCH
> real    1m36.768s
> user    28m9.931s
> sys    1m46.288s
For me its (slowdebug, pch) 4m10 vs (slowdebug, no pch) 4m54, so ~ 10%
faster. That is for a total scratch build, which I seldom do.

However, we should take into account lost time due to:

- you need (or at least should) compile once from scratch without pch,
before pushing your change, to ensure you do not break non-pch builds. Once
JPRT is changed, this practice will become standard.

- If you do not do that and break the build, add the time it takes others
to track down your change and find the cause for the build error.

Its quite annoying and IMHO not worth the seconds I save when building,
therefore I disabled pch - at least on fast machines - a while ago.

>> Earlier today I ran into a local build failure that appeared to me to
>> be possibly PCH-related.
>> So I decided to try disabling PCH, since I now know about the option
>> for doing so, from Volker's email.  But I wanted to see how much
>> slower my build times would be.
>> Imagine my surprise when disabling PCH made my clean builds 10-15%
>> *faster*.  This is for a full jdk root "make images" build, which
>> makes that much of a difference even more astonishing, because there's
>> a lot more going on there than just compiling Hotspot.
>> So how sure are we that PCH (or perhaps the way we are using it)
>> provides any positive benefit at all?  I'm pretty sure it's not doing
>> anything good for me.
>> For reference, my build configuration is Ubuntu 14.04 x86_64,
>> reporting 24 processors.  My configure options are
>>    --enable-ccache
>>    --with-debug-level=release
>>    --disable-zip-debug-info
>>    --disable-precompiled-headers     -- new
>>    --with-jobs=24
>> I made sure to clear the ccache between each build.
> IIRC, running without ccache is usually faster for me.
> StefanK


More information about the hotspot-dev mailing list