[FIX] initializenew: ([er][et][sm] [approved] with benchmarks)

Doug Way dway at mailcan.com
Thu May 20 22:26:02 UTC 2004

Approved. Definitely needs to be there since it's in Behavior>>new.

I ran some of the macro benchmarks before and after this change.

In the Benchmarks package, the "Benchmark testStandardTests" benchmarks 
(I think these are the green book benchmarks) don't work in 3.7... you 
get a MNU: SystemDictionary>>allCallsOn:.

With MacroBenchmarks, I had to comment out most of them except for #1, 
#2 and #6, because the others require a Full image. Here are the results:

#(7157 32149 7094)
#(7114 32049 7149)
#(7020 31326 6986)

#(7339 32068 7298)
#(7336 32031 7105)
#(7245 31511 6978)

So the first macro benchmark (decompile/prettyprint/compile methods) 
looks a bit slower after this change.

Slopstone and Smopstone benchmarks were too close to call, except for 
the "generating strings" smopstone, which ran in 0.78/0.8 seconds before 
the change, and 0.86/0.88 after the change.

So overall, there is a slight slowdown in a couple of benchmarks.

- Doug

ducasse at iam.unibe.ch wrote:

>"Change Set:		KCPFIX initializenew:
>Date:			20 May 2004
>Author:			stŽphane ducasse
>make sure that new: also invoke initialize.
>Note that for speed gain we could in the future shortcut this call on
>String, Array, ByteArray...."

More information about the Squeak-dev mailing list