On Mon, 20 Jan 2025 18:15:11 GMT, Jorn Vernee <jver...@openjdk.org> wrote:

>> That was my original version, but this proved to be faster (albeit very 
>> little, O(.5ns)). I can't really explain why, that's above my paygrade, but 
>> one thing that comes to mind when storing references is that there's might 
>> be a GC barrier involved?
>> 
>> Footprint reduction would be 8 bytes * #carrier threads, and with scalar 
>> replacement, ofAddress should become a noop, right?
>> 
>> Let me re-run the BM once more with pointers, whether I can reproduce.
>
>> Footprint reduction would be 8 bytes * #carrier threads, and with scalar 
>> replacement, ofAddress should become a noop, right?
> 
> Yes.

When moving references in and out of the cache slots, I lose .8ns:

Benchmark                    Mode  Cnt  Score   Error  Units
CallOverheadByValue.byPtr    avgt   10  3.283 ? 0.020  ns/op
CallOverheadByValue.byValue  avgt   10  6.309 ? 0.027  ns/op

-------------

PR Review Comment: https://git.openjdk.org/jdk/pull/23142#discussion_r1922749824

Reply via email to