When I compare Time millisecondsToRun: [1 to: 1000 do: [:i | Transcript show: i printString ; cr]] in 10195 -> 2713 ms and Time millisecondsToRun: [1 to: 1000 do: [:i | Transcript show: i printString ; cr]] in 10296cl -> 5841 So may be we rolled back some changes I harvested from igor. Igor do you remember? Stef _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
2009/5/3 Stéphane Ducasse <[hidden email]>:
> > When I compare > > Time millisecondsToRun: [1 to: 1000 do: [:i | Transcript show: i > printString ; cr]] in 10195 -> 2713 ms and > > Time millisecondsToRun: [1 to: 1000 do: [:i | Transcript show: i > printString ; cr]] in 10296cl -> 5841 > > > So may be we rolled back some changes I harvested from igor. > Igor do you remember? > But you didn't tell, if its already in Pharo, or still under development. The only change which i did for Transcript is following: http://bugs.squeak.org/view.php?id=7033 > Stef > > _______________________________________________ > Pharo-project mailing list > [hidden email] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project > -- Best regards, Igor Stasenko AKA sig. _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
Excellent this was the one I was looking for.
Stef On May 3, 2009, at 9:08 PM, Igor Stasenko wrote: > 2009/5/3 Stéphane Ducasse <[hidden email]>: >> >> When I compare >> >> Time millisecondsToRun: [1 to: 1000 do: [:i | Transcript show: i >> printString ; cr]] in 10195 -> 2713 ms and >> >> Time millisecondsToRun: [1 to: 1000 do: [:i | Transcript show: i >> printString ; cr]] in 10296cl -> 5841 >> >> >> So may be we rolled back some changes I harvested from igor. >> Igor do you remember? >> > I remember that you writing a thread-safe transcript. > But you didn't tell, if its already in Pharo, or still under > development. > > The only change which i did for Transcript is following: > http://bugs.squeak.org/view.php?id=7033 > >> Stef >> >> _______________________________________________ >> Pharo-project mailing list >> [hidden email] >> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project >> > > > > -- > Best regards, > Igor Stasenko AKA sig. > > _______________________________________________ > Pharo-project mailing list > [hidden email] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project > _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
In reply to this post by Igor Stasenko
Still even with your speedup loaded I get 6534 ms in 10296cl :(
Stef On May 3, 2009, at 9:08 PM, Igor Stasenko wrote: > 2009/5/3 Stéphane Ducasse <[hidden email]>: >> >> When I compare >> >> Time millisecondsToRun: [1 to: 1000 do: [:i | Transcript show: i >> printString ; cr]] in 10195 -> 2713 ms and >> >> Time millisecondsToRun: [1 to: 1000 do: [:i | Transcript show: i >> printString ; cr]] in 10296cl -> 5841 >> >> >> So may be we rolled back some changes I harvested from igor. >> Igor do you remember? >> > I remember that you writing a thread-safe transcript. > But you didn't tell, if its already in Pharo, or still under > development. > > The only change which i did for Transcript is following: > http://bugs.squeak.org/view.php?id=7033 > >> Stef >> >> _______________________________________________ >> Pharo-project mailing list >> [hidden email] >> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project >> > > > > -- > Best regards, > Igor Stasenko AKA sig. > > _______________________________________________ > Pharo-project mailing list > [hidden email] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project > _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
In reply to this post by Stéphane Ducasse
Using MessageTally spyOn:, you can see most time is spent in
TextMorphCommandHistory. I'm not convinced how usefull a complete undo history can be in the Transcript... Nicolas 2009/5/3 Stéphane Ducasse <[hidden email]>: > > When I compare > > Time millisecondsToRun: [1 to: 1000 do: [:i | Transcript show: i > printString ; cr]] in 10195 -> 2713 ms and > > Time millisecondsToRun: [1 to: 1000 do: [:i | Transcript show: i > printString ; cr]] in 10296cl -> 5841 > > > So may be we rolled back some changes I harvested from igor. > Igor do you remember? > > Stef > > _______________________________________________ > Pharo-project mailing list > [hidden email] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project > _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
In reply to this post by Stéphane Ducasse
2009/5/3 Stéphane Ducasse <[hidden email]>:
> Still even with your speedup loaded I get 6534 ms in 10296cl :( > Is transcript using the old TextMorph, or its using a Shout text morph. It can be possible that its using a different route for updating a window contents, so given fix simply doesn't affects it. Try debug Transcript show:, and see if its trying to update the morph immediately. My change were for TextMorph to not update contents immediately but rather on regular World update cycle. > Stef > > > > On May 3, 2009, at 9:08 PM, Igor Stasenko wrote: > >> 2009/5/3 Stéphane Ducasse <[hidden email]>: >>> >>> When I compare >>> >>> Time millisecondsToRun: [1 to: 1000 do: [:i | Transcript show: i >>> printString ; cr]] in 10195 -> 2713 ms and >>> >>> Time millisecondsToRun: [1 to: 1000 do: [:i | Transcript show: i >>> printString ; cr]] in 10296cl -> 5841 >>> >>> >>> So may be we rolled back some changes I harvested from igor. >>> Igor do you remember? >>> >> I remember that you writing a thread-safe transcript. >> But you didn't tell, if its already in Pharo, or still under >> development. >> >> The only change which i did for Transcript is following: >> http://bugs.squeak.org/view.php?id=7033 >> >>> Stef >>> >>> _______________________________________________ >>> Pharo-project mailing list >>> [hidden email] >>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project >>> >> >> >> >> -- >> Best regards, >> Igor Stasenko AKA sig. >> >> _______________________________________________ >> Pharo-project mailing list >> [hidden email] >> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project >> > > > _______________________________________________ > Pharo-project mailing list > [hidden email] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project > -- Best regards, Igor Stasenko AKA sig. _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
On May 3, 2009, at 9:18 PM, Igor Stasenko wrote: > 2009/5/3 Stéphane Ducasse <[hidden email]>: >> Still even with your speedup loaded I get 6534 ms in 10296cl :( >> > Is transcript using the old TextMorph, or its using a Shout text > morph. > It can be possible that its using a different route for updating a > window contents, so given fix simply doesn't affects it. > > Try debug Transcript show:, and see if its trying to update the morph > immediately. My change were for TextMorph to not update contents > immediately but rather on regular World update cycle. Yes I saw that. But apparently the fix or its spirit) was already in: there is no refreshWorld anymore Stef _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
In reply to this post by Nicolas Cellier
Strange I cannot reproduce my benchmarh behavior. May be I had two
transcript open, would be idiot but why not. in 10297 MessageTally spyOn: [1 to: 1000 do: [:i | Transcript show: i printString ;cr]] -> 1934 ms and in 10195 -> 1850 now with [....] timeToRun I get 2434 ms in 10297 and 2123 in 10195 But I do not now have TextMorphCommandHistory referenced at all Something like that - 1831 tallies, 1831 msec. **Tree** 100.0% {1831ms} TranscriptStream>>show: 100.0% {1831ms} TranscriptStream>>endEntry 99.8% {1827ms} TranscriptStream(Object)>>changed: 99.8% {1827ms} PluggableTextMorph>>update: 54.7% {1002ms} PluggableTextMorph>>handleEdit: |41.5% {760ms} TextMorphForEditView(TextMorph)>>handleEdit: | |37.1% {679ms} TextMorphForEditView>>updateFromParagraph | | |29.8% {546ms} PluggableTextMorph(ScrollPane)>>setScrollDeltas | | | |15.9% {291ms} PluggableTextMorph(ScrollPane)>>hideOrShowScrollBars | | | | |7.2% {132ms} PluggableTextMorph(ScrollPane)>>resizeScrollBars | | | | | |4.8% {88ms} PluggableTextMorph(ScrollPane)>>hResizeScrollBar | | | | | | |3.7% {68ms} PluggableTextMorph(ScrollPane)>>hScrollBarWidth | | | | | | | 3.1% {57ms} PluggableTextMorph(ScrollPane)>>vIsScrollbarNeeded | | | | | | | 3.1% {57ms} PluggableTextMorph(ScrollPane)>>vIsScrollable | | | | | | | 2.7% {49ms} PluggableTextMorph(ScrollPane)>>vLeftoverScrollRange | | | | | | | 2.1% {38ms} PluggableTextMorph(ScrollPane)>>vScrollBarHeight | | | | | | | 2.1% {38ms} PluggableTextMorph(ScrollPane)>>hIsScrollbarNeeded | | | | | |2.3% {42ms} PluggableTextMorph(ScrollPane)>>vResizeScrollBar | | | | |4.5% {82ms} PluggableTextMorph(ScrollPane)>>vHideOrShowScrollBar | | | | | |4.1% {75ms} PluggableTextMorph(ScrollPane)>>vIsScrollbarNeeded | | | | | | 3.7% {68ms} PluggableTextMorph(ScrollPane)>>vIsScrollable | | | | | | 3.1% {57ms} PluggableTextMorph(ScrollPane)>>vLeftoverScrollRange | | | | | | 2.2% {40ms} PluggableTextMorph(ScrollPane)>>vScrollBarHeight | | | | | | 2.2% {40ms} PluggableTextMorph(ScrollPane)>>hIsScrollbarNeeded | | | | |3.9% {71ms} PluggableTextMorph(ScrollPane)>>hHideOrShowScrollBar | | | | | 2.2% {40ms} PluggableTextMorph(ScrollPane)>>hHideScrollBar | | | |13.7% {251ms} PluggableTextMorph(ScrollPane)>>vSetScrollDelta | | | | 6.1% {112ms} ScrollBar>>setValue: | | | | |6.1% {112ms} ScrollBar(Slider)>>setValue: | | | | | 4.9% {90ms} PluggableTextMorph(ScrollPane)>>vScrollBarValue: | | | | | 2.5% {46ms} PluggableTextMorph(ScrollPane)>>vLeftoverScrollRange | | | | | 2.2% {40ms} TransformMorph>>offset: | | | | 2.8% {51ms} PluggableTextMorph(ScrollPane)>>vLeftoverScrollRange | | | | 2.2% {40ms} PluggableTextMorph(ScrollPane)>>vScrollBarHeight | | | | 2.1% {38ms} PluggableTextMorph(ScrollPane)>>hIsScrollbarNeeded | | |7.4% {135ms} TextMorphForEditView(TextMorph)>>updateFromParagraph | | | 6.8% {125ms} TextMorphForEditView(TextMorph)>>fit | | | 4.4% {81ms} TextMorphForEditView(Morph)>>extent: | | | |4.0% {73ms} TextMorphForEditView(Morph)>>changed | | | | 3.9% {71ms} TextMorphForEditView(Morph)>>invalidRect: | | | | 3.9% {71ms} TextMorphForEditView(Morph)>>invalidRect:from: | | | | 3.9% {71ms} TransformMorph>>invalidRect:from: | | | | 2.2% {40ms} TransformMorph(Morph)>>invalidRect:from: | | | 2.2% {40ms} TextMorphForEditView(Morph)>>changed | | | 2.2% {40ms} TextMorphForEditView(Morph)>>invalidRect: | | | 2.1% {38ms} TextMorphForEditView(Morph)>>invalidRect:from: | | | 2.1% {38ms} TransformMorph>>invalidRect:from: | |4.4% {81ms} TextMorphForEditView(TextMorph)>>selectionChanged | | 3.7% {68ms} TextMorphForEditView(Morph)>>invalidRect: | | 3.7% {68ms} TextMorphForEditView(Morph)>>invalidRect:from: | | 3.7% {68ms} TransformMorph>>invalidRect:from: |9.8% {179ms} PluggableTextMorph>>scrollSelectionIntoView | |9.8% {179ms} PluggableTextMorph>>scrollSelectionIntoView: | | 8.1% {148ms} PluggableTextMorph(ScrollPane)>>scrollBy: | | 2.7% {49ms} TransformMorph>>offset: | | |2.5% {46ms} TransformMorph(Morph)>>changed | | 2.4% {44ms} PluggableTextMorph(ScrollPane)>>vLeftoverScrollRange |3.4% {62ms} TextMorphEditor>>selectFrom:to: | 2.8% {51ms} TextMorphEditor(ParagraphEditor)>>selectInvisiblyFrom:to: | 2.8% {51ms} TextMorphEditor(ParagraphEditor)>>computeIntervalFrom:to: 45.0% {824ms} PluggableTextMorph>>appendEntry 39.7% {727ms} PluggableTextMorph>>replaceSelectionWith: |39.7% {727ms} TextMorphEditor(ParagraphEditor)>>replaceSelectionWith: | 39.5% {723ms} TextMorphEditor>>zapSelectionWith: | 27.7% {507ms} MultiNewParagraph(NewParagraph)>>replaceFrom:to:with:displaying: | |27.0% {494ms} MultiNewParagraph(NewParagraph)>>recomposeFrom:to:delta: | | 12.3% {225ms} MultiNewParagraph (NewParagraph)>>composeLinesFrom:to:delta:into:priorLines:atY: | | |12.3% {225ms} TextComposer>>composeLinesFrom:to:del...ner:wantsColumnBreaks: | | | 8.1% {148ms} OrderedCollection(SequenceableCollection)>>asArray | | | |8.1% {148ms} Array class(ArrayedCollection class)>>withAll: | | | | 8.1% {148ms} Array(SequenceableCollection)>>replaceFrom:to:with: | | | | 8.0% {146ms} Array>>replaceFrom:to:with:startingAt: | | | | 8.0% {146ms} Array(SequenceableCollection)>>replaceFrom:to:with:startingAt: | | | | 4.0% {73ms} OrderedCollection>>at: | | | | 4.0% {73ms} primitives | | | 4.2% {77ms} TextComposer>>composeAllLines | | | 4.1% {75ms} TextComposer>>composeOneLine | | | 3.8% {70ms} TextComposer>>composeAllRectangles: | | | 3.4% {62ms} TextComposer>>composeEachRectangleIn: | | | 3.2% {59ms} CompositionScanner>>composeFrom:inRectan...leftSide:rightSide: | | 9.1% {167ms} OrderedCollection>>addLast: | | |6.1% {112ms} primitives | | |3.0% {55ms} OrderedCollection>>makeRoomAtLast | | 5.5% {101ms} primitives | 8.6% {157ms} TextMorphEditor>>addEditCommand: | |8.6% {157ms} TextMorphCommandHistory>>rememberCommand: | | 8.5% {156ms} TextMorphCommandHistory>>removeUndoneCommands | | 8.4% {154ms} OrderedCollection>>reversed | | 4.4% {81ms} OrderedCollection>>addLast: | | |4.0% {73ms} primitives | | 3.9% {71ms} OrderedCollection>>reverseDo: | 2.3% {42ms} TextMorphEditor(ParagraphEditor)>>computeIntervalFrom:to: 5.2% {95ms} PluggableTextMorph>>selectInvisiblyFrom:to: 5.2% {95ms} TextMorphEditor(ParagraphEditor)>>selectInvisiblyFrom:to: 5.2% {95ms} TextMorphEditor(ParagraphEditor)>>computeIntervalFrom:to: 2.6% {48ms} TextMorphEditor(ParagraphEditor)>>setMark: |2.5% {46ms} MultiNewParagraph(NewParagraph)>>characterBlockForIndex: | 2.2% {40ms} CharacterBlockScanner>>characterBlockAtPoint:index:in: 2.5% {46ms} TextMorphEditor(ParagraphEditor)>>setPoint: 2.4% {44ms} MultiNewParagraph(NewParagraph)>>characterBlockForIndex: 2.1% {38ms} CharacterBlockScanner>>characterBlockAtPoint:index:in: **Leaves** 10.1% {185ms} OrderedCollection>>addLast: 5.5% {101ms} MultiNewParagraph(NewParagraph)>>recomposeFrom:to:delta: 4.0% {73ms} OrderedCollection>>at: 4.0% {73ms} Array(SequenceableCollection)>>replaceFrom:to:with:startingAt: 3.9% {71ms} OrderedCollection>>reverseDo: 3.3% {60ms} SmallIdentityDictionary>>findIndexFor: 3.1% {57ms} OrderedCollection>>makeRoomAtLast 2.5% {46ms} Rectangle>>setOrigin:corner: 2.2% {40ms} Rectangle class>>origin:corner: **Memory** old +494,828 bytes young +79,176 bytes used +574,004 bytes free -574,004 bytes **GCs** full 0 totalling 0ms (0.0% uptime) incr 627 totalling 95ms (5.0% uptime), avg 0.0ms tenures 11 (avg 57 GCs/tenure) root table 0 overflows _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
MessageTally is bad advisor in this issue, because it runs additional
process which watching the other one. So, you may 2009/5/3 Stéphane Ducasse <[hidden email]>: > Strange I cannot reproduce my benchmarh behavior. May be I had two > transcript open, would be idiot but why not. > > in 10297 MessageTally spyOn: [1 to: 1000 do: [:i | Transcript show: i > printString ;cr]] > -> 1934 ms > > and in 10195 > -> 1850 > Transcript clear. [1 to: 1000 do: [:i | Transcript show: i printString ;cr]] timeToRun (lower run earlier) 2918 2630 2276 1948 1636 this is strange. Seems like Transcript clear not doing as it should be, leaking the space. > now with > [....] timeToRun > I get 2434 ms in 10297 > > and 2123 in 10195 > > But I do not now have TextMorphCommandHistory referenced at all > > Something like that > > - 1831 tallies, 1831 msec. > > **Tree** > 100.0% {1831ms} TranscriptStream>>show: > 100.0% {1831ms} TranscriptStream>>endEntry > 99.8% {1827ms} TranscriptStream(Object)>>changed: > 99.8% {1827ms} PluggableTextMorph>>update: > 54.7% {1002ms} PluggableTextMorph>>handleEdit: > |41.5% {760ms} TextMorphForEditView(TextMorph)>>handleEdit: > | |37.1% {679ms} TextMorphForEditView>>updateFromParagraph > | | |29.8% {546ms} > PluggableTextMorph(ScrollPane)>>setScrollDeltas > | | | |15.9% {291ms} > PluggableTextMorph(ScrollPane)>>hideOrShowScrollBars > | | | | |7.2% {132ms} > PluggableTextMorph(ScrollPane)>>resizeScrollBars > | | | | | |4.8% {88ms} > PluggableTextMorph(ScrollPane)>>hResizeScrollBar > | | | | | | |3.7% {68ms} > PluggableTextMorph(ScrollPane)>>hScrollBarWidth > | | | | | | | 3.1% {57ms} > PluggableTextMorph(ScrollPane)>>vIsScrollbarNeeded > | | | | | | | 3.1% {57ms} > PluggableTextMorph(ScrollPane)>>vIsScrollable > | | | | | | | 2.7% {49ms} > PluggableTextMorph(ScrollPane)>>vLeftoverScrollRange > | | | | | | | 2.1% {38ms} > PluggableTextMorph(ScrollPane)>>vScrollBarHeight > | | | | | | | 2.1% {38ms} > PluggableTextMorph(ScrollPane)>>hIsScrollbarNeeded > | | | | | |2.3% {42ms} > PluggableTextMorph(ScrollPane)>>vResizeScrollBar > | | | | |4.5% {82ms} > PluggableTextMorph(ScrollPane)>>vHideOrShowScrollBar > | | | | | |4.1% {75ms} > PluggableTextMorph(ScrollPane)>>vIsScrollbarNeeded > | | | | | | 3.7% {68ms} > PluggableTextMorph(ScrollPane)>>vIsScrollable > | | | | | | 3.1% {57ms} > PluggableTextMorph(ScrollPane)>>vLeftoverScrollRange > | | | | | | 2.2% {40ms} > PluggableTextMorph(ScrollPane)>>vScrollBarHeight > | | | | | | 2.2% {40ms} > PluggableTextMorph(ScrollPane)>>hIsScrollbarNeeded > | | | | |3.9% {71ms} > PluggableTextMorph(ScrollPane)>>hHideOrShowScrollBar > | | | | | 2.2% {40ms} > PluggableTextMorph(ScrollPane)>>hHideScrollBar > | | | |13.7% {251ms} > PluggableTextMorph(ScrollPane)>>vSetScrollDelta > | | | | 6.1% {112ms} ScrollBar>>setValue: > | | | | |6.1% {112ms} ScrollBar(Slider)>>setValue: > | | | | | 4.9% {90ms} > PluggableTextMorph(ScrollPane)>>vScrollBarValue: > | | | | | 2.5% {46ms} > PluggableTextMorph(ScrollPane)>>vLeftoverScrollRange > | | | | | 2.2% {40ms} TransformMorph>>offset: > | | | | 2.8% {51ms} > PluggableTextMorph(ScrollPane)>>vLeftoverScrollRange > | | | | 2.2% {40ms} > PluggableTextMorph(ScrollPane)>>vScrollBarHeight > | | | | 2.1% {38ms} > PluggableTextMorph(ScrollPane)>>hIsScrollbarNeeded > | | |7.4% {135ms} > TextMorphForEditView(TextMorph)>>updateFromParagraph > | | | 6.8% {125ms} TextMorphForEditView(TextMorph)>>fit > | | | 4.4% {81ms} TextMorphForEditView(Morph)>>extent: > | | | |4.0% {73ms} > TextMorphForEditView(Morph)>>changed > | | | | 3.9% {71ms} > TextMorphForEditView(Morph)>>invalidRect: > | | | | 3.9% {71ms} > TextMorphForEditView(Morph)>>invalidRect:from: > | | | | 3.9% {71ms} > TransformMorph>>invalidRect:from: > | | | | 2.2% {40ms} > TransformMorph(Morph)>>invalidRect:from: > | | | 2.2% {40ms} TextMorphForEditView(Morph)>>changed > | | | 2.2% {40ms} > TextMorphForEditView(Morph)>>invalidRect: > | | | 2.1% {38ms} > TextMorphForEditView(Morph)>>invalidRect:from: > | | | 2.1% {38ms} > TransformMorph>>invalidRect:from: > | |4.4% {81ms} > TextMorphForEditView(TextMorph)>>selectionChanged > | | 3.7% {68ms} TextMorphForEditView(Morph)>>invalidRect: > | | 3.7% {68ms} > TextMorphForEditView(Morph)>>invalidRect:from: > | | 3.7% {68ms} TransformMorph>>invalidRect:from: > |9.8% {179ms} PluggableTextMorph>>scrollSelectionIntoView > | |9.8% {179ms} PluggableTextMorph>>scrollSelectionIntoView: > | | 8.1% {148ms} PluggableTextMorph(ScrollPane)>>scrollBy: > | | 2.7% {49ms} TransformMorph>>offset: > | | |2.5% {46ms} TransformMorph(Morph)>>changed > | | 2.4% {44ms} > PluggableTextMorph(ScrollPane)>>vLeftoverScrollRange > |3.4% {62ms} TextMorphEditor>>selectFrom:to: > | 2.8% {51ms} > TextMorphEditor(ParagraphEditor)>>selectInvisiblyFrom:to: > | 2.8% {51ms} > TextMorphEditor(ParagraphEditor)>>computeIntervalFrom:to: > 45.0% {824ms} PluggableTextMorph>>appendEntry > 39.7% {727ms} PluggableTextMorph>>replaceSelectionWith: > |39.7% {727ms} > TextMorphEditor(ParagraphEditor)>>replaceSelectionWith: > | 39.5% {723ms} TextMorphEditor>>zapSelectionWith: > | 27.7% {507ms} > MultiNewParagraph(NewParagraph)>>replaceFrom:to:with:displaying: > | |27.0% {494ms} > MultiNewParagraph(NewParagraph)>>recomposeFrom:to:delta: > | | 12.3% {225ms} > MultiNewParagraph > (NewParagraph)>>composeLinesFrom:to:delta:into:priorLines:atY: > | | |12.3% {225ms} > TextComposer>>composeLinesFrom:to:del...ner:wantsColumnBreaks: > | | | 8.1% {148ms} > OrderedCollection(SequenceableCollection)>>asArray > | | | |8.1% {148ms} Array > class(ArrayedCollection class)>>withAll: > | | | | 8.1% {148ms} > Array(SequenceableCollection)>>replaceFrom:to:with: > | | | | 8.0% {146ms} > Array>>replaceFrom:to:with:startingAt: > | | | | 8.0% {146ms} > Array(SequenceableCollection)>>replaceFrom:to:with:startingAt: > | | | | 4.0% {73ms} > OrderedCollection>>at: > | | | | 4.0% {73ms} primitives > | | | 4.2% {77ms} TextComposer>>composeAllLines > | | | 4.1% {75ms} TextComposer>>composeOneLine > | | | 3.8% {70ms} > TextComposer>>composeAllRectangles: > | | | 3.4% {62ms} > TextComposer>>composeEachRectangleIn: > | | | 3.2% {59ms} > CompositionScanner>>composeFrom:inRectan...leftSide:rightSide: > | | 9.1% {167ms} OrderedCollection>>addLast: > | | |6.1% {112ms} primitives > | | |3.0% {55ms} OrderedCollection>>makeRoomAtLast > | | 5.5% {101ms} primitives > | 8.6% {157ms} TextMorphEditor>>addEditCommand: > | |8.6% {157ms} > TextMorphCommandHistory>>rememberCommand: > | | 8.5% {156ms} > TextMorphCommandHistory>>removeUndoneCommands > | | 8.4% {154ms} OrderedCollection>>reversed > | | 4.4% {81ms} OrderedCollection>>addLast: > | | |4.0% {73ms} primitives > | | 3.9% {71ms} OrderedCollection>>reverseDo: > | 2.3% {42ms} > TextMorphEditor(ParagraphEditor)>>computeIntervalFrom:to: > 5.2% {95ms} PluggableTextMorph>>selectInvisiblyFrom:to: > 5.2% {95ms} > TextMorphEditor(ParagraphEditor)>>selectInvisiblyFrom:to: > 5.2% {95ms} > TextMorphEditor(ParagraphEditor)>>computeIntervalFrom:to: > 2.6% {48ms} TextMorphEditor(ParagraphEditor)>>setMark: > |2.5% {46ms} > MultiNewParagraph(NewParagraph)>>characterBlockForIndex: > | 2.2% {40ms} > CharacterBlockScanner>>characterBlockAtPoint:index:in: > 2.5% {46ms} TextMorphEditor(ParagraphEditor)>>setPoint: > 2.4% {44ms} > MultiNewParagraph(NewParagraph)>>characterBlockForIndex: > 2.1% {38ms} > CharacterBlockScanner>>characterBlockAtPoint:index:in: > **Leaves** > 10.1% {185ms} OrderedCollection>>addLast: > 5.5% {101ms} MultiNewParagraph(NewParagraph)>>recomposeFrom:to:delta: > 4.0% {73ms} OrderedCollection>>at: > 4.0% {73ms} > Array(SequenceableCollection)>>replaceFrom:to:with:startingAt: > 3.9% {71ms} OrderedCollection>>reverseDo: > 3.3% {60ms} SmallIdentityDictionary>>findIndexFor: > 3.1% {57ms} OrderedCollection>>makeRoomAtLast > 2.5% {46ms} Rectangle>>setOrigin:corner: > 2.2% {40ms} Rectangle class>>origin:corner: > > **Memory** > old +494,828 bytes > young +79,176 bytes > used +574,004 bytes > free -574,004 bytes > > **GCs** > full 0 totalling 0ms (0.0% uptime) > incr 627 totalling 95ms (5.0% uptime), avg 0.0ms > tenures 11 (avg 57 GCs/tenure) > root table 0 overflows > > > > > > > > > _______________________________________________ > Pharo-project mailing list > [hidden email] > http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project > -- Best regards, Igor Stasenko AKA sig. _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
2009/5/4 Igor Stasenko <[hidden email]>:
> MessageTally is bad advisor in this issue, because it runs additional > process which watching the other one. > So, you may > oops.. forgot to finish this phrase. I verified my claims, and it seems that for this issue this is not the case :) > 2009/5/3 Stéphane Ducasse <[hidden email]>: >> Strange I cannot reproduce my benchmarh behavior. May be I had two >> transcript open, would be idiot but why not. >> >> in 10297 MessageTally spyOn: [1 to: 1000 do: [:i | Transcript show: i >> printString ;cr]] >> -> 1934 ms >> >> and in 10195 >> -> 1850 >> > In 10292 i got these numbers growing higher and higher each time i run it: > Transcript clear. [1 to: 1000 do: [:i | Transcript show: i printString > ;cr]] timeToRun > (lower run earlier) > 2918 > 2630 > 2276 > 1948 > 1636 > > this is strange. Seems like Transcript clear not doing as it should > be, leaking the space. > >> now with >> [....] timeToRun >> I get 2434 ms in 10297 >> >> and 2123 in 10195 >> >> But I do not now have TextMorphCommandHistory referenced at all >> >> Something like that >> >> - 1831 tallies, 1831 msec. >> >> **Tree** >> 100.0% {1831ms} TranscriptStream>>show: >> 100.0% {1831ms} TranscriptStream>>endEntry >> 99.8% {1827ms} TranscriptStream(Object)>>changed: >> 99.8% {1827ms} PluggableTextMorph>>update: >> 54.7% {1002ms} PluggableTextMorph>>handleEdit: >> |41.5% {760ms} TextMorphForEditView(TextMorph)>>handleEdit: >> | |37.1% {679ms} TextMorphForEditView>>updateFromParagraph >> | | |29.8% {546ms} >> PluggableTextMorph(ScrollPane)>>setScrollDeltas >> | | | |15.9% {291ms} >> PluggableTextMorph(ScrollPane)>>hideOrShowScrollBars >> | | | | |7.2% {132ms} >> PluggableTextMorph(ScrollPane)>>resizeScrollBars >> | | | | | |4.8% {88ms} >> PluggableTextMorph(ScrollPane)>>hResizeScrollBar >> | | | | | | |3.7% {68ms} >> PluggableTextMorph(ScrollPane)>>hScrollBarWidth >> | | | | | | | 3.1% {57ms} >> PluggableTextMorph(ScrollPane)>>vIsScrollbarNeeded >> | | | | | | | 3.1% {57ms} >> PluggableTextMorph(ScrollPane)>>vIsScrollable >> | | | | | | | 2.7% {49ms} >> PluggableTextMorph(ScrollPane)>>vLeftoverScrollRange >> | | | | | | | 2.1% {38ms} >> PluggableTextMorph(ScrollPane)>>vScrollBarHeight >> | | | | | | | 2.1% {38ms} >> PluggableTextMorph(ScrollPane)>>hIsScrollbarNeeded >> | | | | | |2.3% {42ms} >> PluggableTextMorph(ScrollPane)>>vResizeScrollBar >> | | | | |4.5% {82ms} >> PluggableTextMorph(ScrollPane)>>vHideOrShowScrollBar >> | | | | | |4.1% {75ms} >> PluggableTextMorph(ScrollPane)>>vIsScrollbarNeeded >> | | | | | | 3.7% {68ms} >> PluggableTextMorph(ScrollPane)>>vIsScrollable >> | | | | | | 3.1% {57ms} >> PluggableTextMorph(ScrollPane)>>vLeftoverScrollRange >> | | | | | | 2.2% {40ms} >> PluggableTextMorph(ScrollPane)>>vScrollBarHeight >> | | | | | | 2.2% {40ms} >> PluggableTextMorph(ScrollPane)>>hIsScrollbarNeeded >> | | | | |3.9% {71ms} >> PluggableTextMorph(ScrollPane)>>hHideOrShowScrollBar >> | | | | | 2.2% {40ms} >> PluggableTextMorph(ScrollPane)>>hHideScrollBar >> | | | |13.7% {251ms} >> PluggableTextMorph(ScrollPane)>>vSetScrollDelta >> | | | | 6.1% {112ms} ScrollBar>>setValue: >> | | | | |6.1% {112ms} ScrollBar(Slider)>>setValue: >> | | | | | 4.9% {90ms} >> PluggableTextMorph(ScrollPane)>>vScrollBarValue: >> | | | | | 2.5% {46ms} >> PluggableTextMorph(ScrollPane)>>vLeftoverScrollRange >> | | | | | 2.2% {40ms} TransformMorph>>offset: >> | | | | 2.8% {51ms} >> PluggableTextMorph(ScrollPane)>>vLeftoverScrollRange >> | | | | 2.2% {40ms} >> PluggableTextMorph(ScrollPane)>>vScrollBarHeight >> | | | | 2.1% {38ms} >> PluggableTextMorph(ScrollPane)>>hIsScrollbarNeeded >> | | |7.4% {135ms} >> TextMorphForEditView(TextMorph)>>updateFromParagraph >> | | | 6.8% {125ms} TextMorphForEditView(TextMorph)>>fit >> | | | 4.4% {81ms} TextMorphForEditView(Morph)>>extent: >> | | | |4.0% {73ms} >> TextMorphForEditView(Morph)>>changed >> | | | | 3.9% {71ms} >> TextMorphForEditView(Morph)>>invalidRect: >> | | | | 3.9% {71ms} >> TextMorphForEditView(Morph)>>invalidRect:from: >> | | | | 3.9% {71ms} >> TransformMorph>>invalidRect:from: >> | | | | 2.2% {40ms} >> TransformMorph(Morph)>>invalidRect:from: >> | | | 2.2% {40ms} TextMorphForEditView(Morph)>>changed >> | | | 2.2% {40ms} >> TextMorphForEditView(Morph)>>invalidRect: >> | | | 2.1% {38ms} >> TextMorphForEditView(Morph)>>invalidRect:from: >> | | | 2.1% {38ms} >> TransformMorph>>invalidRect:from: >> | |4.4% {81ms} >> TextMorphForEditView(TextMorph)>>selectionChanged >> | | 3.7% {68ms} TextMorphForEditView(Morph)>>invalidRect: >> | | 3.7% {68ms} >> TextMorphForEditView(Morph)>>invalidRect:from: >> | | 3.7% {68ms} TransformMorph>>invalidRect:from: >> |9.8% {179ms} PluggableTextMorph>>scrollSelectionIntoView >> | |9.8% {179ms} PluggableTextMorph>>scrollSelectionIntoView: >> | | 8.1% {148ms} PluggableTextMorph(ScrollPane)>>scrollBy: >> | | 2.7% {49ms} TransformMorph>>offset: >> | | |2.5% {46ms} TransformMorph(Morph)>>changed >> | | 2.4% {44ms} >> PluggableTextMorph(ScrollPane)>>vLeftoverScrollRange >> |3.4% {62ms} TextMorphEditor>>selectFrom:to: >> | 2.8% {51ms} >> TextMorphEditor(ParagraphEditor)>>selectInvisiblyFrom:to: >> | 2.8% {51ms} >> TextMorphEditor(ParagraphEditor)>>computeIntervalFrom:to: >> 45.0% {824ms} PluggableTextMorph>>appendEntry >> 39.7% {727ms} PluggableTextMorph>>replaceSelectionWith: >> |39.7% {727ms} >> TextMorphEditor(ParagraphEditor)>>replaceSelectionWith: >> | 39.5% {723ms} TextMorphEditor>>zapSelectionWith: >> | 27.7% {507ms} >> MultiNewParagraph(NewParagraph)>>replaceFrom:to:with:displaying: >> | |27.0% {494ms} >> MultiNewParagraph(NewParagraph)>>recomposeFrom:to:delta: >> | | 12.3% {225ms} >> MultiNewParagraph >> (NewParagraph)>>composeLinesFrom:to:delta:into:priorLines:atY: >> | | |12.3% {225ms} >> TextComposer>>composeLinesFrom:to:del...ner:wantsColumnBreaks: >> | | | 8.1% {148ms} >> OrderedCollection(SequenceableCollection)>>asArray >> | | | |8.1% {148ms} Array >> class(ArrayedCollection class)>>withAll: >> | | | | 8.1% {148ms} >> Array(SequenceableCollection)>>replaceFrom:to:with: >> | | | | 8.0% {146ms} >> Array>>replaceFrom:to:with:startingAt: >> | | | | 8.0% {146ms} >> Array(SequenceableCollection)>>replaceFrom:to:with:startingAt: >> | | | | 4.0% {73ms} >> OrderedCollection>>at: >> | | | | 4.0% {73ms} primitives >> | | | 4.2% {77ms} TextComposer>>composeAllLines >> | | | 4.1% {75ms} TextComposer>>composeOneLine >> | | | 3.8% {70ms} >> TextComposer>>composeAllRectangles: >> | | | 3.4% {62ms} >> TextComposer>>composeEachRectangleIn: >> | | | 3.2% {59ms} >> CompositionScanner>>composeFrom:inRectan...leftSide:rightSide: >> | | 9.1% {167ms} OrderedCollection>>addLast: >> | | |6.1% {112ms} primitives >> | | |3.0% {55ms} OrderedCollection>>makeRoomAtLast >> | | 5.5% {101ms} primitives >> | 8.6% {157ms} TextMorphEditor>>addEditCommand: >> | |8.6% {157ms} >> TextMorphCommandHistory>>rememberCommand: >> | | 8.5% {156ms} >> TextMorphCommandHistory>>removeUndoneCommands >> | | 8.4% {154ms} OrderedCollection>>reversed >> | | 4.4% {81ms} OrderedCollection>>addLast: >> | | |4.0% {73ms} primitives >> | | 3.9% {71ms} OrderedCollection>>reverseDo: >> | 2.3% {42ms} >> TextMorphEditor(ParagraphEditor)>>computeIntervalFrom:to: >> 5.2% {95ms} PluggableTextMorph>>selectInvisiblyFrom:to: >> 5.2% {95ms} >> TextMorphEditor(ParagraphEditor)>>selectInvisiblyFrom:to: >> 5.2% {95ms} >> TextMorphEditor(ParagraphEditor)>>computeIntervalFrom:to: >> 2.6% {48ms} TextMorphEditor(ParagraphEditor)>>setMark: >> |2.5% {46ms} >> MultiNewParagraph(NewParagraph)>>characterBlockForIndex: >> | 2.2% {40ms} >> CharacterBlockScanner>>characterBlockAtPoint:index:in: >> 2.5% {46ms} TextMorphEditor(ParagraphEditor)>>setPoint: >> 2.4% {44ms} >> MultiNewParagraph(NewParagraph)>>characterBlockForIndex: >> 2.1% {38ms} >> CharacterBlockScanner>>characterBlockAtPoint:index:in: >> **Leaves** >> 10.1% {185ms} OrderedCollection>>addLast: >> 5.5% {101ms} MultiNewParagraph(NewParagraph)>>recomposeFrom:to:delta: >> 4.0% {73ms} OrderedCollection>>at: >> 4.0% {73ms} >> Array(SequenceableCollection)>>replaceFrom:to:with:startingAt: >> 3.9% {71ms} OrderedCollection>>reverseDo: >> 3.3% {60ms} SmallIdentityDictionary>>findIndexFor: >> 3.1% {57ms} OrderedCollection>>makeRoomAtLast >> 2.5% {46ms} Rectangle>>setOrigin:corner: >> 2.2% {40ms} Rectangle class>>origin:corner: >> >> **Memory** >> old +494,828 bytes >> young +79,176 bytes >> used +574,004 bytes >> free -574,004 bytes >> >> **GCs** >> full 0 totalling 0ms (0.0% uptime) >> incr 627 totalling 95ms (5.0% uptime), avg 0.0ms >> tenures 11 (avg 57 GCs/tenure) >> root table 0 overflows >> >> >> >> >> >> >> >> >> _______________________________________________ >> Pharo-project mailing list >> [hidden email] >> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project >> > > > > -- > Best regards, > Igor Stasenko AKA sig. > -- Best regards, Igor Stasenko AKA sig. _______________________________________________ Pharo-project mailing list [hidden email] http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project |
Free forum by Nabble | Edit this page |