classpath-patches
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[cp-patches] RFC: Reduce number of split-for-gcj lists


From: Mark Wielaard
Subject: [cp-patches] RFC: Reduce number of split-for-gcj lists
Date: Mon, 12 Sep 2005 02:17:13 +0200

Hi,

The compile time when using gcj is pretty large. This is partly because
gcj gets invoked 254 times since that is the number of packages we have.
The following patch collapses all packages > 3 "levels" into their
parents bringing the number of .list files down to 145.  This reduces
the make time in lib/ for me significantly from:
        real    5m37.915s
        user    4m25.491s
        sys     0m42.462s
to:
        real    3m45.413s
        user    2m49.351s
        sys     0m35.196s
It does mean a change in any of the deeply nested packages triggers
re-compilation of a few more files in its 'parent-package'. But I feel
the overall compile time reduction is worth it.

2005-09-11  Mark Wielaard  <address@hidden>

        * lib/split-for-gcj.sh: Cut list to 3 package levels deep.

Comments?

Cheers,

Mark
? lib/Makefile.gcj.mark
? lib/time.new
Index: lib/split-for-gcj.sh
===================================================================
RCS file: /cvsroot/classpath/classpath/lib/split-for-gcj.sh,v
retrieving revision 1.6
diff -u -r1.6 split-for-gcj.sh
--- lib/split-for-gcj.sh        22 Aug 2005 21:04:35 -0000      1.6
+++ lib/split-for-gcj.sh        12 Sep 2005 00:12:03 -0000
@@ -31,7 +31,7 @@
 for dir in java javax gnu org; do
    fgrep /$dir/ classes | while read file; do
       pkg=`echo "$file " | sed -n -e "s,^.*/\($dir/.*\)/[^/]*$,\1,p"`
-      list=lists/`echo $pkg | sed -e 's,/,-,g'`
+      list=lists/`echo $pkg | sed -e 's,/,-,g' | cut -f1-3 -d-`
       echo "$file" >> ${list}.list.1
       f2=`echo "$file" | sed -n -e "s,^.*/\($dir/.*\)$,\1,p"`
       f2=`echo "$f2" | sed -e 's/.java$//'`.class

Attachment: signature.asc
Description: This is a digitally signed message part


reply via email to

[Prev in Thread] Current Thread [Next in Thread]