On 10/17/07, Robert Klemme <shortcutter / googlemail.com> wrote: > 2007/10/17, Joel VanderWerf <vjoel / path.berkeley.edu>: > > 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/