RFR: 8311648: Refactor the Arena/Chunk/ChunkPool interface
Thomas Stuefe
stuefe at openjdk.org
Fri Jul 7 12:47:53 UTC 2023
On Fri, 7 Jul 2023 12:05:54 GMT, Johan Sjölen <jsjolen at openjdk.org> wrote:
> Hi,
>
> This PR refactors the Arena code without introducing any changes in behavior. I believe that this leads to a much clearer API and that this will in turn simplify the maintenance of this code. `Chunk` is now much more "dumb", mainly acting as a way of interrogating the chunk of data that it is holding. The `ChunkPool` gains a more prominent role, being entirely responsible for the memory allocation strategy used. `Arena` is basically unchanged, as it orchestrates the usage of these two APIs. The `chop` and `next_chop` methods are re-defined to be static inside of `Chunk`, having an object `delete` itself is very surprising, so I'm happy to get rid of that.
>
> I hope that you agree with me on these changes!
>
> Cheers,
> Johan
Not sure if I get time to review, but this is appreciated. We tried to improve this several times in the past, but got stuck every time because of UseMallocOnly. Thank god we got rid of that.
-------------
PR Comment: https://git.openjdk.org/jdk/pull/14803#issuecomment-1625363472
More information about the hotspot-runtime-dev
mailing list