New method cache, 30% faster macrobenchmarks and ineffeciencies.
Stephan Rudlof
sr at evolgo.de
Mon Dec 10 15:31:45 UTC 2001
Scott A Crosby wrote:
>
> On Mon, 10 Dec 2001, Stephan Rudlof wrote:
>
...
>
> IE, #identityhash returns SOME number based on the object's as-constructed
> ID, with nothing forcing that number to be exactly #hashBits. And your
> notion of #longHash is equivalent to #hash?
No, 'building support for the changed ProtoObject>>identityHash
^^^^^^^ (your's)
named e.g. #longHash into the VM'.
^^^^^^^^^^
Probably better to name it #primitiveIdentityHash in the VM, though...
> > Answer: there is only about a 25% performance loss for a *very* simple loop
> > for the ST version:
> >
>
> Not too surprised, its an extra method invocation. Note that this is
> overstating the numbers, usually, we invoke #hash, not #identityHash, so
> that we're going from 2 levels of indirection to 3 levels, and the
> relative degradation will be lower.
>
> >
> > This isn't worth introducing a new prim, isn't it?
> >
>
> Not yet. :) Well, unless the next incompatible VM comes out, then it
> probably makes sence to reclaim the bytecode and make both #hashBits and
> #identityHash named prims.
Agreed.
Greetings,
Stephan
--
Stephan Rudlof (sr at evolgo.de)
"Genius doesn't work on an assembly line basis.
You can't simply say, 'Today I will be brilliant.'"
-- Kirk, "The Ultimate Computer", stardate 4731.3
More information about the Squeak-dev
mailing list
|