morphic slowdown

Karl Ramberg karl.ramberg at chello.se
Sun May 26 19:43:30 UTC 2002


Andreas Raab wrote:
> 
> Karl,
> 
> > Here is a simple benchmark:
> >
> > [1 to: 10 do:[:i| SystemWindow new openInWorld].
> > (SystemWindow windowsIn: World satisfying: [:w | w model
> > canDiscardEdits])
> >               do: [:w | w delete]]timeToRun
> 
> Interesting benchmark. Looking at it, most of the speed difference
> appears to come from a different construction of the later SystemWindows
> than the earlier ones. E.g., if you profile the stuff you'll find that a
> lot of time is spent in places that actually relate to using alignments
> for controlling the title of 3.2/3.3 windows whereas the "older"
> versions did the layout manually.

There was several major morphic owerhauls from 2.7 to 3.3. Andreas
should know as
he pulled them trough :-) 
The biggest being  the Morphic layout and the Morphic events. I guess
all these
will acount for small diffrencies in speed. But do we want to go back ? NO!
But maybe some bottlenecks could be found:

Here is another test, but the layout should not
matter here I think as there are no submorphs. I ran the test with
EllipseMorph and
RectangleMorph.
 
Smalltalk garbageCollect.
test _ EllipseMorph new openInWorld; extent:200 at 200; color: Color blue.
[1 to: 100 do:[:i| test position: 200+i at 300.
			test world displayWorld].test delete]timeToRun  

EllipseMorph:
3.3:
4153
4208

2.7:
2966
2934

RectangleMorph:
3.3:
1960
1919

2.7:
1183
1204

Karl



More information about the Squeak-dev mailing list