[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Help-smalltalk] Bench with OrderedCollection
From: |
Paolo Bonzini |
Subject: |
Re: [Help-smalltalk] Bench with OrderedCollection |
Date: |
Fri, 17 Jun 2011 17:44:08 +0200 |
Very nice analysis! But it shows the problems with microbenchmarks
more than anything else, I'd say. :-) looking forward to your debug
info improvements though!
2011/6/17, Gwenael Casaccio <address@hidden>:
> Hi,
>
> I've made a small benchmark with Coq-Stack (no jit) and GNU Smalltalk.
>
> {OrderedCollection } collect: [ :class |
> | queue |
> queue := class new.
> class -> (
> (1 to: 5) collect: [ :run |
> ObjectMemory globalGarbageCollect.
> {
> (Time millisecondsToRun: [ 1 to: 1000000 do: [ :each |
> queue addFirst: each ] ]).
> (Time millisecondsToRun: [ 1 to: 1000000 do: [ :each |
> queue removeFirst ] ]) } ]) ].
>
> I use a tweaked VM (no more LINE_NUMBER byte code and few other changes)
> but the results are interesting:
>
> Cog-Stack:
> {OrderedCollection->#(#(178 264) #(116 262) #(116 260) #(114 262) #(116
> 260))}
>
> Gst:
> (OrderedCollection->((371 797 ) (323 658 ) (315 661 ) (317 660 ) (316
> 658 ) ) )
>
> Now if I look at OrderedCollection>>#removeFirst at Squeak or Gst:
>
> We see that GST decrease the size instead of Squeak so if we remove
> the line:
>
> self size < self shrinkSize ifTrue: [self shrink].
>
> Gst without decreasing:
> (OrderedCollection->((383 195 ) (284 196 ) (173 196 ) (172 196 ) (173
> 196 ) )
>
> And I guess #addFirst: can be tuned too :)
>
> Cheers,
> Gwen
>
> _______________________________________________
> help-smalltalk mailing list
> address@hidden
> https://lists.gnu.org/mailman/listinfo/help-smalltalk
>
>
--
Inviato dal mio dispositivo mobile