slow FreeCell (was: Re: Morphic slow in 2.8 (was: Forecast))

Doug Way dway at riskmetrics.com
Fri Oct 6 20:51:58 UTC 2000


I tried Andreas' latest benchmark on my 733MHz Win2000 box at 1024x768
(Squeak=8-bits, Win=32-bits) and got basically the same results between
2.7 and 2.8. (see below) (Actually, 2.8 scores slightly better.  Hmm, I
guess this result is different from David's last benchmark run.)

However, I'm seeing results similar to David's with the FreeCell tests. 
For me, the slowdown is almost entirely due to the gradient background:

Squeak bit depth:   8-bits      16-bits     32-bits
                    ------      -------     -------
2.7:                2140 msec   2859 msec   4047 msec
2.8:                3578 msec   4360 msec   5031 msec
2.8 (no gradient):  2375 msec   3094 msec   4141 msec

For what it's worth, I also saw a similar slowdown on my Mac G4/400 at
home, with the FreeCell tests comparing 2.7 and 2.8.  (Which seems to
contradict Bob's benchmark run on his G3.)  I could post numbers later
if someone wants them.


Squeak 2.7 with 2.7 VM (Jan 15)  Squeak=8-bits
/************** BalloonEngine statistics ****************/
0	 mSecs -- 0	 ops -- 0.0	 avg. mSecs/op -- Initialization
15	 mSecs -- 77000	 ops -- 0.0	 avg. mSecs/op -- Finish test
21	 mSecs -- 76900	 ops -- 0.0	 avg. mSecs/op -- Fetching/Adding GET
entries
0	 mSecs -- 0	 ops -- 0.0	 avg. mSecs/op -- Adding AET entries
924	 mSecs -- 76900	 ops -- 0.01	 avg. mSecs/op -- Fetching/Computing
fills
0	 mSecs -- 0	 ops -- 0.0	 avg. mSecs/op -- Merging fills
4850	 mSecs -- 76900	 ops -- 0.06	 avg. mSecs/op -- Displaying span
buffer
20	 mSecs -- 76800	 ops -- 0.0	 avg. mSecs/op -- Fetching/Updating AET
entries
0	 mSecs -- 0	 ops -- 0.0	 avg. mSecs/op -- Changing AET entries
5830 mSecs for all operations
384500 overall operations


Squeak 2.8 with 2.8 VM (May 23)  Squeak=8-bits
/************** BalloonEngine statistics ****************/
0	 mSecs -- 0	 ops -- 0.0	 avg. mSecs/op -- Initialization
32	 mSecs -- 77000	 ops -- 0.0	 avg. mSecs/op -- Finish test
9	 mSecs -- 76900	 ops -- 0.0	 avg. mSecs/op -- Fetching/Adding GET
entries
0	 mSecs -- 0	 ops -- 0.0	 avg. mSecs/op -- Adding AET entries
880	 mSecs -- 76900	 ops -- 0.01	 avg. mSecs/op -- Fetching/Computing
fills
0	 mSecs -- 0	 ops -- 0.0	 avg. mSecs/op -- Merging fills
4774	 mSecs -- 76900	 ops -- 0.06	 avg. mSecs/op -- Displaying span
buffer
20	 mSecs -- 76800	 ops -- 0.0	 avg. mSecs/op -- Fetching/Updating AET
entries
0	 mSecs -- 0	 ops -- 0.0	 avg. mSecs/op -- Changing AET entries
5715 mSecs for all operations
384500 overall operations


(Ack, there are a lot of parameters to keep track of when running these
benchmarks... Squeak image version, VM version, screen size, Squeak bit
depth, OS bit depth, ...)


- Doug Way
  dway at riskmetrics.com
  RiskMetrics Group - Ann Arbor, MI
  http://www.riskmetrics.com



"Raab, Andreas" wrote:
> 
> David,
> 
> Let's see if we can get closer. Here's another thing to try:
> 
> BalloonEngine resetStats.
> BalloonEngine doProfileStats: true.
>         Display deferUpdates: true.
>         1 to: 100 do:[:i|
>                 (BalloonCanvas on: Display)
>                         drawRectangle: Display boundingBox
>                         color: Color red
>                         borderWidth: 0
>                         borderColor: nil].
>         Display deferUpdates: false.
> BalloonEngine printStats.
> 
> This will print information (to the Transcript) about the internal time
> spent in interesting areas of the engine. Could you try this on both
> versions?!
> 
> Thanks,
> 
>   - Andreas





More information about the Squeak-dev mailing list