2009/2/7 Ramon Leon <[email protected]>:
>> The biggest concern I have right now is speed. I'm not
>> saying Pharo is too slow; I'm simply admitting that I do not
>> know whether it is fast enough for some of the things I want to do.
>
> +10 to this.
>
> The UI is looking really great lately, but overall the experience is it's
> just too slow. Cracking open a raw squeak base image reminds me how snappy
> the UI used to be. Not really complaining, it's totally bearable, but it'd
> sure be nice if the pretty UI was quick and snappy, and you are asking.
>
Sure thing
MessageTally spyOn:[self fullDrawOn: World assuredCanvas] "where self
is an OB system window morph"
16.7% {10ms} BalloonEngine>>copyLoopFaster
11.7% {7ms} SimpleBorder>>frameRectangle:on:
6.7% {4ms} Array(SequenceableCollection)>>select:
5.0% {3ms} ByteString(String)>>=
5.0% {3ms} SmallInteger(Number)>>to:by:do:
5.0% {3ms} GrafPort(BitBlt)>>primDisplayString:from:to:map:xTable:kern:
5.0% {3ms} BorderStyle>>frameRectangle:on:
3.3% {2ms} ByteSymbol>>species
3.3% {2ms} ByteString class(String class)>>new:
total 61ms.
some hot points crying to be optimized:
cache the OBMonticelloPackageNode>>classCategories , which get
rebuilt each time you draw the window.
this can make following numbers much smaller:
5.0% {3ms} ByteString(String)>>=
6.7% {4ms} Array(SequenceableCollection)>>select:
3.3% {2ms} ByteString class(String class)>>new:
Making SystemWindow>>drawDropShadowOn: to do nothing makes a difference:
[10 timesRepeat: [self fullDrawOn: World assuredCanvas ]] timeToRun
with shadows: 530
without: 473
~ 10% speedup
Changing the theme makes some difference (no shadows/with shadows):
- Watery 2: 50/60 ms
- Standard Squeak: 38/43 ms
- Soft Squeak: 46/55 ms
- Vistary: 56/62ms
(keep in mind these numbers are polluted with messageTally)
As to me, the theme variancy is quite acceptable - a most complex
theme (with transulency) is drawn just 50% slower than most simple
one.
As for,
3.3% {2ms} ByteString class(String class)>>new:
Total count of ByteString>>new: calls during
GlobalCounter reset.
self fullDrawOn: World assuredCanvas.
GlobalCounter counters copy inspect
is 7146,
which again makes me look suspicious at OB here.. Hey! Are we drawing,
or processing a text?!?!
> Ramon Leon
> http://onsmalltalk.com
>
>
> _______________________________________________
> Pharo-project mailing list
> [email protected]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
--
Best regards,
Igor Stasenko AKA sig.
_______________________________________________
Pharo-project mailing list
[email protected]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project