Re: Struct is slow



On 10/17/07, Robert Klemme <shortcutter@xxxxxxxxxxxxxx> wrote:
2007/10/17, Joel VanderWerf <vjoel@xxxxxxxxxxxxxxxxx>:
Sylvain Joyeux wrote:
I'm not sure whether you are familiar with Benchmark#bmbm which does a
rehearsal - personally I rather not switch off GC since in realistic
situations GC time belongs into the mix. But results are rather
similar:
Sure. GC does belong to the mix. Now, if GC is enabled you are not able to
compare anything. Let's assume that GC runs during 'array init', you will
say 'hey, struct init is faster'. Now, if GC runs during 'struct init' the
result may change ...

But you have a *lot* invocations and it's highly unlikely that GC runs
during every init. On the other hand, if you allocate a lot of memory
from OS that may slow things down. And this will happen without GC.

Also, IMHO cost of memory GC overhead is also part of the runtime
performance. If you compare two approaches and one allocates a lot
more memory than the other, then GC times belong in the measurement
because in a real application that approach will also lead to
increased GC overhead.

Spot on, IMHO

--
Rick DeNatale

My blog on Ruby
http://talklikeaduck.denhaven2.com/

.



Relevant Pages

  • Re: Struct is slow
    ... situations GC time belongs into the mix. ... if GC runs during 'struct init' the ... if you allocate a lot of memory ... IMHO cost of memory GC overhead is also part of the runtime ...
    (comp.lang.ruby)
  • Re: Struct is slow
    ... rehearsal - personally I rather not switch off GC since in realistic ... situations GC time belongs into the mix. ... if GC runs during 'struct init' the ... microbenchmarks like these, it is simply noise. ...
    (comp.lang.ruby)

Quantcast