Hi Paul,
On Mar 3, 2016, at 8:16 AM, PAUL DEBRUICKER <pdebruic@gmail.com> wrote:
See http://forum.world.st/The-Inbox-System-mt-697-mcz-td4802003.html for the orginial discussion that this fix is attempting to fix. Basically there is an extra and unnecessary #home send in MessageTally>>#tally:by: MessageTally>>#tally:in:by: and QSystemTally>>#tally:by:
Prior to the fix
AndreasSystemProfiler spyOn: [ [ #((1 2 3)) do: [ :each | each findLast: [ :ea | ea squared = ea ] ] ] bench ].
gives
**Tree** 100.0 (5,016) GLMMorphicPharoScriptRenderer [GLMMorphicPharoCodeRenderer] actOnHighlightAndEvaluate: 100.0 (5,016) RubSmalltalkEditor highlightEvaluateAndDo: 100.0 (5,016) RubSmalltalkEditor evaluate:andDo: 100.0 (5,016) OpalCompiler evaluate 100.0 (5,016) UndefinedObject DoIt 44.7 (2,242) Array [SequenceableCollection] findLast: 44.7 (2,242) Array [SequenceableCollection] do: 1.2000000000000002 (60) SmallInteger [Number] squared
and after the fix it gives
**Tree** 100.0 (5,024) BlockClosure newProcess 100.0 (5,024) MorphicUIManager spawnNewProcess 100.0 (5,024) WorldMorph doOneCycle 100.0 (5,024) WorldState doOneCycleFor: 100.0 (5,024) WorldState doOneCycleNowFor: 100.0 (5,024) WorldMorph runStepMethods 100.0 (5,024) WorldState runStepMethodsIn: 100.0 (5,024) GLMMorphicPharoScriptRenderer [GLMMorphicPharoCodeRenderer] actOnHighlightAndEvaluate: 100.0 (5,024) RubEditingArea [RubAbstractTextArea] handleEdit: 100.0 (5,024) GLMMorphicPharoScriptRenderer [GLMMorphicPharoCodeRenderer] actOnHighlightAndEvaluate: 100.0 (5,024) RubSmalltalkEditor highlightEvaluateAndDo: 100.0 (5,024) RubSmalltalkEditor evaluate:andDo: 100.0 (5,024) OpalCompiler evaluate 100.0 (5,024) UndefinedObject DoIt 100.0 (5,024) AndreasSystemProfiler class spyOn: 100.0 (5,024) BlockClosure ensure: 100.0 (5,024) AndreasSystemProfiler class spyOn: 100.0 (5,024) AndreasSystemProfiler spyOn: 100.0 (5,024) BlockClosure ensure: 100.0 (5,024) UndefinedObject DoIt 100.0 (5,024) BlockClosure bench 100.0 (5,024) BlockClosure benchFor: 99.30000000000001 (4,989) UndefinedObject DoIt 98.4 (4,944) Array [SequenceableCollection] do: 55.300000000000004 (2,778) UndefinedObject DoIt 53.2 (2,673) Array [SequenceableCollection] findLast: 7.2 (362) UndefinedObject DoIt 1.2000000000000002 (60) SmallInteger [Number] squared
Basically a more accurate count that measures where the time is actually spent in blocks. But that means I'll have to update the MessageTallyTest>>#testTallySends to reflect the new report. Does that sound OK?
Yes!! _,,,^..^,,,_ (phone)