Got it. Thanks for this.
-kto On Feb 4, 2013, at 1:04 AM, Fredrik Öhrström wrote: > Issue filed, on its way in: > http://cr.openjdk.java.net/~ohrstrom/webrev-8007446-add-MP/ > > //Fredrik > > 2013/2/2 Kelly O'Hair <kelly.oh...@oracle.com>: >> Great stuff. Have you filed an issue on this? Or shall I? >> >> >> -kto >> >> On Feb 1, 2013, at 4:58 AM, Fredrik Öhrström wrote: >> >>> ie. use /MP on the cl.exe command line. >>> >>> On the build machine (Windows Server 2007, Visual Studio 2010, 32 HT >>> cores, 64GB ram) configuring with: >>> >>> sh configure --enable-sjavac >>> --with-freetype=/cygdrive/d/tools/freetype-amd64 >>> --with-boot-jdk=/cygdrive/d/java/jdk-7-fcs-bin-b147/ >>> >>> (You need to patch >>> src/share/classes/com/sun/tools/sjavac/server/CompilerThread.java >>> line 256, change equals("windows)" to startswith("windows), this fix >>> is going into tl soon.) >>> >>> Without MP >>> ----- Build times ------- >>> Start 2013-02-01 12:23:50 >>> End 2013-02-01 12:35:20 >>> 00:00:32 corba >>> 00:04:43 hotspot >>> 00:00:15 jaxp >>> 00:00:24 jaxws >>> 00:04:49 jdk >>> 00:00:46 langtools >>> 00:11:30 TOTAL >>> ------------------------- >>> >>> With MP >>> ----- Build times ------- >>> Start 2013-02-01 12:54:54 >>> End 2013-02-01 13:03:56 >>> 00:00:31 corba >>> 00:02:20 hotspot >>> 00:00:14 jaxp >>> 00:00:22 jaxws >>> 00:04:44 jdk >>> 00:00:46 langtools >>> 00:09:02 TOTAL >>> ------------------------- >>> >>> For such a simple patch it is a nice speedup. Please test and see if >>> it improves the speed on your multi core machines. >>> >>> //Fredrik >>> >>> Oh, and for reference this is the speed without sjavac but with /MP. >>> >>> ----- Build times ------- >>> Start 2013-02-01 13:39:38 >>> End 2013-02-01 13:51:46 >>> 00:00:35 corba >>> 00:02:24 hotspot >>> 00:00:28 jaxp >>> 00:00:36 jaxws >>> 00:07:11 jdk >>> 00:00:48 langtools >>> 00:12:08 TOTAL >>> ------------------------- >>> >>> $ hg diff >>> diff -r 67498c863813 make/windows/makefiles/compile.make >>> --- a/make/windows/makefiles/compile.make Thu Jan 17 12:16:06 2013 >>> +0100 >>> +++ b/make/windows/makefiles/compile.make Fri Feb 01 13:05:08 2013 >>> +0100 >>> @@ -44,6 +44,7 @@ >>> # /GS Inserts security stack checks in some functions (VS2005 >>> default) >>> # /Oi Use intrinsics (in /O2) >>> # /Od Disable all optimizations >>> +# /MP Use multiple cores for compilation >>> # >>> # NOTE: Normally following any of the above with a '-' will turn off that >>> flag >>> # >>> @@ -52,7 +53,7 @@ >>> # improving the quality of crash log stack traces involving jvm.dll. >>> >>> # These are always used in all compiles >>> -CXX_FLAGS=/nologo /W3 /WX >>> +CXX_FLAGS=/nologo /W3 /WX /MP >>> >>> # Let's add debug information when Full Debug Symbols is enabled >>> !if "$(ENABLE_FULL_DEBUG_SYMBOLS)" == "1" >>> diff -r 67498c863813 make/windows/makefiles/sa.make >>> --- a/make/windows/makefiles/sa.make Thu Jan 17 12:16:06 2013 +0100 >>> +++ b/make/windows/makefiles/sa.make Fri Feb 01 13:05:08 2013 +0100 >>> @@ -108,6 +108,8 @@ >>> SA_LFLAGS = $(SA_LFLAGS) -map -debug >>> !endif >>> >>> +SA_CFLAGS = $(SA_CFLAGS) -MP >>> + >>> # Note that we do not keep sawindbj.obj around as it would then >>> # get included in the dumpbin command in build_vm_def.sh >>