Withdrawn: 8342724: Improve the performance and memory consumption of VMATree::register_mapping
duke
duke at openjdk.org
Tue Dec 17 18:20:45 UTC 2024
On Mon, 21 Oct 2024 18:08:07 GMT, Johan Sjölen <jsjolen at openjdk.org> wrote:
> Today, VMATree::register_mapping depends on two worklist arrays which are used for keeping track of the iteration order of the tree. These arrays are re-allocated for each call to register_mapping, which has a measurable performance impact on the tree.
>
> This PR intends to remedy the situation in two ways:
>
> 1. By removing one of the arrays entirely, and instead using merge/split operations for what this array used to be employed for.
> 2. By saving the remaining array as part of the VMATree instance, reusing it. As the size of this tree grows on an order of log n where n is the number of nodes in the tree, and its elements are small, this is not a large cost.
>
> When measuring performance, I have observed a ~2x improvement through the use of a profiler. My colleague, @gerard-ziemski, has observed a ~3x improvement when running Java2Demo with NMT summary mode in terms of CPU time over a set of NMT operations.
>
> Cheers.
This pull request has been closed without being integrated.
-------------
PR: https://git.openjdk.org/jdk/pull/21621
More information about the hotspot-runtime-dev
mailing list