[ENH] bench (was: Object turnover.)
Joseph Frippiat
frippiat.j at kst.be
Fri Dec 3 08:20:51 UTC 2004
Where can I find the changeset ?
Thanks
Joseph
-----Original Message-----
From: squeak-dev-bounces at lists.squeakfoundation.org
[mailto:squeak-dev-bounces at lists.squeakfoundation.org]On Behalf Of Chris
Muller
Sent: Friday, December 03, 2004 6:09 AM
To: Squeak List
Subject: [ENH] bench (was: Object turnover.)
> Should I worry about this object turnover, or is the system designed
> to handle this high object turnover? Just trying to get my head
> around some of the issues of efficient squeak code..
The wonderful thing is, analyzing performance is a breeze in Squeak! Check
out
this changeset, it's just one method and is my favorite "quick benchmarking"
method.
[ Array new: 100 ] bench ----> '622021.595680864 per second.'
[ Association allInstVarNames ] bench ----> '77790.0419916017 per
second.'
[ "as fast as it can go" ] bench ----> '3.446075384923015e6 per second.'
It is much more useful and convenient than Time millisecondsToRun:
- less typing, you can bench anything with one word, "bench"
- it always runs in about five seconds, not 1 second or 5 minutes. You
get a
reasonable sample and a reasonable wait, every time, with NO guesswork.
- it actually tells you how fast it is (executions / sec) instead of how
long
it took providing a consistent measurement for different things benched over
time.
It's so easy I find myself frequently using it while coding a method and I
don't even trouble myself opening a workspace; I just type "bench" right
there
where I'm at.
Cheers,
Chris
More information about the Squeak-dev
mailing list
|