Stop using precompiled headers for Linux? (original) (raw)
Erik Joelsson erik.joelsson at oracle.com
Fri Nov 2 16:21:29 UTC 2018
- Previous message (by thread): Stop using precompiled headers for Linux?
- Next message (by thread): Stop using precompiled headers for Linux?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Nice work!
What exactly are you measuring, "make hotspot" or some other target?
If we can find a reasonable set of extra files for the windows pch that restores all or most of the performance, that would of course be preferable. I doubt we will find a significantly better selection on Mac compared to Linux though.
/Erik
On 2018-11-02 07:00, Magnus Ihse Bursie wrote:
On 2018-11-02 12:14, Magnus Ihse Bursie wrote:
Caveats: I have only run this on my local linux build with the default server JVM configuration. Other machines will have different sweet spots. Other JVM variants/feature combinations will have different sweet spots. And, most importantly, I have not tested this at all on Windows. Nevertheless, I'm almost prepared to suggest a patch that uses this selection of files if running on gcc, just as is, because of the speed improvements I measured. I've started running tests on other platforms. Unfortunately, I don't have access to quite as powerful machines, so everything takes much longer. For the moment, I've only tested my "BKM" (best known method) from linux, to see if it works. For xcode/macos I got: real 4m21,528s user 27m28,623s sys 2m18,244s hotspot with original pch real 4m28,867s user 29m10,685s sys 2m14,456s hotspot without pch real 3m6,322s user 19m3,000s sys 1m41,252s hotspot with new BKM pch So obviously this is a nice improvement even here. I could probably try around a bit and see if there is an even better fit with a different selections of header files, but even without that, I'd say this patch is by itself as good for clang as it is for gcc. For windows I got: real 6m39.035s user 0m58.580s sys 2m48.138s hotspot with original pch real 10m29.227s user 1m6.909s sys 2m24.108s hotspot without pch real 6m56.262s user 0m57.563s sys 2m27.514s hotspot with new BKM pch I'm not sure what's going on with the user time numbers here. Presumably cygwin cannot get to the real Windows time data. What I can see is the huge difference in wall clock time between PCH and no PCH. I can also see that the new trimmed BKM list retains most of that improvement, but is actually somewhat slower that the original list. I'm currently rerunning with a larger set on Windows, to see if this helps improve things. I can certainly live with a precompiled.hpp that includes some additional files on Windows. /Magnus
- Previous message (by thread): Stop using precompiled headers for Linux?
- Next message (by thread): Stop using precompiled headers for Linux?
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]