[ENH][VM][FIX] faster garbage collection, and removal of unused vars

John M McIntosh johnmci at smalltalkconsulting.com
Mon Dec 30 20:49:24 UTC 2002


Lets see today I built upon the squeak port found in FreeBSD 4.6 and  
found one issue
(Now I could have used the official distribution but I was curious  
about what was in the FreeBSD port collection)

In my VM changes I added some accessors for variables, but if you just  
file in the fasterGC change set
you don't have an accessor for savedWindowSize, thus it gets localized.  
Thus you must add an
accessor for this instance variable to prevent it from being localized.  
The unix source base cheerfully refers to it
directly versus using an accessor.

However I did get to run a GC benchmark on my i386 box.

a 5156 non-gnuified VM gives raw numbers of 1157-1574 on 1156640 objects
a 5156 non-gnuified VM with fasterCG changeset gives 1039-1436 on  
1156206 objects

Ah, that's about a 10% improvement. Versus the 30% I get on the mac,  
but I suspect that is because providing more working registers versus  
memory can be done on the mac, but not on the register poor intel  
machine, however things *are* a bit better...

PS
mmmm  now it seems the MakeFile that in the port has cflags
as
-O -pipe -fomit-frame-pointer -DLSB_FIRST=1 -funroll-loops

how very odd, should that not be -O2 ?
Mmm well some testing says it doesn't make much of a difference...
I'll leave that issue up to the folks that fiddle with the intel  
compiler options.

Oh and the FreeBSD port doesn't gnuify either, perhaps someone might  
chase why? Or prod someone
to update that unix distribution? mm implies Roland Jesse  
<jesse at cs.uni-magdeburg.de> built the port


--
======================================================================== 
===
John M. McIntosh <johnmci at smalltalkconsulting.com> 1-800-477-2659
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
======================================================================== 
===




More information about the Squeak-dev mailing list