[lworld] RFR: Prototype inline cursors for List
Roger Riggs
Roger.Riggs at oracle.com
Thu Mar 26 18:07:13 UTC 2020
Hi Brian,
I've looked at the code and its not a lot different in the number of
fetches and conditional branches.
I'll be looking into it further.
Roger
On 3/26/20 1:45 PM, Brian Goetz wrote:
> These don't look so good! I suspect that the Iterator is performing
> so well because it's getting good EA, but not sure why cursors aren't
> doing better? Guess we'll have to dig into the generated code....
>
> On 3/26/2020 1:14 PM, Roger Riggs wrote:
>> Implementation of Cursors and jmh tests comparing
>> typical List traversal via direct index, iterator,
>> inline cursor, and an iterator implemented on top of cursor.
>>
>> Sample results:
>>
>> (size) Mode Cnt Score
>> Error Units
>> XArrayListCursorTest.getViaArray 100000 avgt 5
>> 507793.484 7086.038 ns/op
>> XArrayListCursorTest.getViaCursorForLoop 100000 avgt 5
>> 656461.958 52488.547 ns/op
>> XArrayListCursorTest.getViaCursorWhileLoop 100000 avgt 5
>> 641963.323 32219.409 ns/op
>> XArrayListCursorTest.getViaIterator 100000 avgt 5
>> 558863.817 23539.256 ns/op
>> XArrayListCursorTest.getViaIteratorCurs 100000 avgt 5
>> 733161.466 33721.881 ns/op
>>
>> -------------
>>
>> Commit messages:
>> - Prototype inline cursors for List
>>
>> Changes: https://git.openjdk.java.net/valhalla/pull/5/files
>> Webrev: https://webrevs.openjdk.java.net/valhalla/5/webrev.00
>> Stats: 2139 lines in 3 files changed: 2139 ins; 0 del; 0 mod
>> Patch: https://git.openjdk.java.net/valhalla/pull/5.diff
>> Fetch: git fetch https://git.openjdk.java.net/valhalla
>> pull/5/head:pull/5
>>
>> PR: https://git.openjdk.java.net/valhalla/pull/5
>
More information about the valhalla-dev
mailing list