RFR: JDK-8298597 : HdrSeq: support for a merge() method [v3]
Kelvin Nilsen
kdnilsen at openjdk.org
Mon Dec 19 17:56:30 UTC 2022
On Mon, 19 Dec 2022 17:46:18 GMT, Y. Srinivas Ramakrishna <ysr at openjdk.org> wrote:
>> A merge functionality on stats (distributions) was needed for the remembered set scan that I was using in some companion work. This PR implements a first cut at that, which is sufficient for our first (and only) use case.
>>
>> Unfortunately, for expediency, I am deferring work on decaying statistics, as a result of which users that want decaying statistics will get NaNs instead (or trigger guarantees).
>>
>> In the sort term, before I open this draft for review, I'll:
>>
>> - [x] add tests
>> - [x] ensure that if a merge action has been taken on a distribution, then any attempt to access a decayed statistic causes an error
>> - [x] open a linked ticket to take care of the decayed statistics
>>
>> An important goal here was to have an API that would be efficient and correct. The API shape may change when we have considered how to handle decaying statistics.
>
> Y. Srinivas Ramakrishna has updated the pull request with a new target base due to a merge or a rebase. The pull request now contains 10 commits:
>
> - Merge branch 'master' into stats_merge
> - Merge branch 'master' into stats_merge
> - Safety tests for decayed stats, until implemented.
> - gtest for merge.
> - Vanilla merge test for ShenandoahNumberSeq; needs to be extended some.
> - Changes based on experience with uses in RS scan stats.
> Fixed some bugs.
>
> -- We still need to implement a few vanilla tests for the merge method.
> -- Planning to defer the work on decayed stats (which will be delivered
> separately in a lower-priority sibling ticket)
> - Merge branch 'master' into stats_merge
> - More merge() implementation.
> -- Need to think about merge of decaying stats in AbsSeq.
> -- Need to add tests.
> - Interim checkin of code w/beginnings of merge() support. Some
> implementations are still stubbed out and need to be written.
> - First cut at merge. More changes to come. May not build yet.
Marked as reviewed by kdnilsen (Committer).
Marked as reviewed by kdnilsen (Committer).
-------------
PR: https://git.openjdk.org/shenandoah/pull/184
More information about the shenandoah-dev
mailing list