2009/2/7 Ramon Leon <ramon.l...@allresnet.com>: >> 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 > Pharo-project@lists.gforge.inria.fr > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project > -- Best regards, Igor Stasenko AKA sig. _______________________________________________ Pharo-project mailing list Pharo-project@lists.gforge.inria.fr http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project