Kelly O'Hair wrote: > > > Andrew Haley wrote: >> Kelly O'Hair wrote: >>> Excellent points Steve. And good summary. >>> >>> The hotspot nmake Makefiles are tied to the MS Visual Studio (VC) >>> compilers, >>> and I'm pretty sure nmake.exe is now only delivered with the VC product. >>> It's not clear how you can match this build performance. >>> However, it's also not clear how much of this benefit comes from >>> Hotspot's >>> use of VC pre-compiled headers (PCH). Windows builds with nmake/VC/PCH >>> takes a few minutes, versus 20-35min builds on equivalent Linux/Solaris >>> systems. So it's significant and something (the performance) that we >>> want >>> to keep. If a GNU Makefile using VC/PCH can match nmake is an open >>> question. >> >> This is interesting. I guess the Linux build isn't using PCH too? > > The gcc compilers and Sun Studio compilers we have used in the past either > didn't have PCH capability or didn't have stable enough ones. > It's been my experience that each PCH implementation is unique in some > way, varied implementation techniques, with varied performance benefits. > The gcc we have used (version 3 based) did not have a good PCH solution > (gcc 4 supposedly has one now?), > and the Sun Studio Compilers just recently got a stable PCH system.
I haven't used it, but it's supposed to be pretty good. Apple use it all the time. > On Windows, none of the [ parallel make options ] options are available or > show little > benefit. So far PCH has been the best answer, which the Hotspot team > has done but the rest of the jdk's native sources aren't quite as > normalized as the Hotspot sources. > > Maybe the Windows issue is the higher cost of process startup/warmup? > Fewer processes with more work to do is a better Windows situation? > I'm guessing of course... > >> >>> I have tried using parallel GNU make and batch compiles in the jdk >>> builds, and seen benefits on Linux and Solaris, but not much with >>> Windows. >> >> Ah, that is important: IME builds scale almost linearly with the number >> of processors. > > What is IME? In My Experience. :-) Andrew.
