ponderous 'make world' times post GCC 3.3...

Adam McDougall mcdouga9 at egr.msu.edu
Sun Aug 10 11:11:19 PDT 2003

On Wed, Aug 06, 2003 at 11:25:36PM -0700, David O'Brien wrote:

  Am I the only one that saw 'make world' go from almost 3 hours with GCC
  3.2 to:
      >>> make world completed on Wed Aug  6 20:49:47 PDT 2003
                         (started Wed Aug  6 09:49:30 PDT 2003)
      11h17.00s real          9h29m42.85s user    1h15m22.05s sys
  post GCC 3.3?  This is a 500mhz Blade 100 with a GENERIC minus WITNESS*
  -- David  (obrien at FreeBSD.org)

I have been rebuilding my dual cpu Ultra 60 occasionally, including 
several times after the gcc upgrade, and have not noticed a large 
slowdown.  Here are some datapoints, maybe it will help discover
where the problem lies if someone can try at least a similar 
build configuration.  Notables in config and build are NOPROFILE=yes,
no DEBUG=-g, no INVARIENTS*, no WITNESS*, SCHED_4BSD (sometimes
I use ULE, but not in the past month), SMP, /etc/malloc.conf -> aj,
make -j2 MAKE="make -j2" buildworld.  I always cvsup before building
if it is a new day.  I can return more information or tests if anyone

Infact, I occasionally compile the samba port as a dirty benchmark,
and the compile time dropped from ~9.5 minutes to 8 minutes between
may and july 18. 

bw1.log:Script started on Sun Jun  8 17:16:52 2003
bw1.log:Script done on Sun Jun  8 19:36:52 2003
bw2.log:Script started on Wed Jun 11 22:51:51 2003
bw2.log:Script done on Thu Jun 12 00:54:38 2003
bw3.log:Script started on Fri Jun 13 18:26:45 2003
bw3.log:Script done on Fri Jun 13 20:18:21 2003
bw4.log:Script started on Tue Jun 17 18:45:08 2003
bw4.log:Script done on Tue Jun 17 20:34:12 2003
bw5.log:Script started on Wed Jun 18 17:44:28 2003
bw5.log:Script done on Wed Jun 18 19:33:28 2003
bw6.log:Script started on Tue Jun 24 18:28:54 2003
bw6.log:Script done on Tue Jun 24 20:17:47 2003
bw7.log:Script started on Tue Jul  1 18:25:01 2003
bw7.log:Script done on Tue Jul  1 20:57:22 2003
bw8.log:Script started on Wed Jul  2 19:59:14 2003
bw8.log:Script done on Wed Jul  2 22:46:29 2003
bw9.log:Script started on Fri Jul  4 10:15:08 2003
bw9.log:Script done on Fri Jul  4 13:04:01 2003
bw10.log:Script started on Wed Jul 16 19:24:34 2003
bw10.log:Script done on Wed Jul 16 21:02:10 2003
bw11.log:Script started on Thu Jul 17 17:23:07 2003
bw11.log:Script done on Thu Jul 17 19:00:30 2003
bw12.log:Script started on Thu Jul 17 19:35:37 2003
bw12.log:Script done on Thu Jul 17 21:13:46 2003
bw13.log:Script started on Thu Jul 17 23:53:55 2003
bw13.log:Script done on Fri Jul 18 03:10:21 2003
bw14.log:Script started on Sun Jul 27 12:03:38 2003
bw14.log:Script done on Sun Jul 27 14:03:42 2003
bw15.log:Script started on Sun Aug 10 10:53:46 2003
bw15.log:Script done on Sun Aug 10 12:53:04 2003

build options from make.conf:
CFLAGS=-pipe -O

Non-commented kernel config options:
machine         sparc64
cpu             SUN4U
ident           U60
maxusers        0
options         OFW_NEWPCI
options         SCHED_4BSD              #4BSD scheduler
options         INET                    #InterNETworking
options         FFS                     #Berkeley Fast Filesystem
options         SOFTUPDATES             #Enable FFS soft updates support
options         UFS_ACL                 #Support for access control lists
options         UFS_DIRHASH             #Improve performance on big directories
options         NFSCLIENT               #Network Filesystem Client
options         NFSSERVER               #Network Filesystem Server
options         CD9660                  #ISO 9660 Filesystem
options         PROCFS                  #Process filesystem (requires PSEUDOFS)
options         PSEUDOFS                #Pseudo-filesystem framework
options         COMPAT_43               #Compatible with BSD 4.3 [KEEP THIS!]
options         COMPAT_FREEBSD4         #Keep this for a while
options         SCSI_DELAY=3000 #Delay (in ms) before probing SCSI
options         KTRACE                  #ktrace(1) syscall trace support
options         SYSVSHM                 #SYSV-style shared memory
options         SYSVMSG                 #SYSV-style message queues
options         SYSVSEM                 #SYSV-style semaphores
options         _KPOSIX_PRIORITY_SCHEDULING #Posix P1003_1B real-time extensions
options         SMP                     # Symmetric MultiProcessor Kernel
device          apb                     # Sun APB PCI-PCI bridge
device          ebus
device          isa
device          pci
device          sbus
device          ata
device          atadisk                 # ATA disk drives
device          atapicd                 # ATAPI CDROM drives
device          ahc             # AHA2940 and onboard AIC7xxx devices
device          isp             # Qlogic family
device          ispfw           # Firmware module for Qlogic host adapters
device          sym             # NCR/Symbios Logic (newer chipsets + those of `ncr')
device          scbus           # SCSI bus (required)
device          ch              # SCSI media changers
device          da              # Direct Access (disks)
device          sa              # Sequential Access (tape etc)
device          cd              # CD
device          pass            # Passthrough device (direct SCSI access)
device          ses             # SCSI Environmental Services (and SAF-TE)
device          ofw_console     # OpenBoot firmware console device
device          genclock        # Generic clock interface
device          eeprom          # eeprom (really an ebus driver for the MK48Txx)
device          "mk48txx"       # Mostek MK48T02, MK48T08, MK48T59 clock
device          sab             # Siemens SAB82532 based serial ports
device          miibus          # MII bus support
device          gem             # Sun GEM/Sun ERI/Apple GMAC
device          hme             # Sun HME (Happy Meal Ethernet)
device          rl              # RealTek 8129/8139
device          random          # Entropy device
device          loop            # Network loopback
device          ether           # Ethernet support
device          pty             # Pseudo-ttys (telnet etc)
device          bpf             #Berkeley packet filter
options         OFW_PCI_DEBUG


real memory  = 805306368 (768 MB)
cpu0: Sun Microsystems UltraSparc-II Processor (360.03 MHz CPU)
cpu1: Sun Microsystems UltraSparc-II Processor (360.03 MHz CPU)
da0: <FUJITSU MXF3364LC 0319> Fixed Direct Access SCSI-2 device 
da0: 40.000MB/s transfers (20.000MHz, offset 16, 16bit), Tagged Queueing Enabled
da0: 34732MB (71132960 512 byte sectors: 255H 63S/T 4427C)

More information about the freebsd-sparc64 mailing list