RFR: 8314438: NMT: Performance benchmarks are needed to have a baseline for comparison of improvements

Afshin Zafari azafari at openjdk.org
Mon Sep 25 07:34:49 UTC 2023


On Wed, 6 Sep 2023 19:56:10 GMT, Gerard Ziemski <gziemski at openjdk.org> wrote:

> The test will not compile for me unless I add:
> 
> `import java.util.concurrent.TimeUnit;`

Sorry, it was removed mistakenly before pushing the code. Now fixed.

> You said `The JSON file can be used for visualising the results.` Can you please explain how to do that exactly?

The [visualizer site](https://jmh.morethan.io) is added to the PR description. The JSON file can be dropped there.

> Is the multithreading mode really useful?

NMT records stack traces for threads in a different way as of other threads. It uses a link list for the former and a static hash table for the latter. I tried to make a more realistic use case of NMT.

> THREADS=2, WITH_THREADS=0
> THREADS=4, WITH_THREADS=0
> THREADS=8, WITH_THREADS=0

The last two rows of the above list are skipped now. Thanks for the comment.

> The tool should look at `NMTOff` first from both runs and verify that they are the same, to prove that the results are useful (there should be no difference)

Which measures should be the same between *both runs*? For `NMT_Off` for example, there are 2 (no of threads= 0,4) measures per method. Consider also, we will have more methods for virtual memory alloc/dealloc tests.

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

PR Comment: https://git.openjdk.org/jdk/pull/15563#issuecomment-1709605094
PR Comment: https://git.openjdk.org/jdk/pull/15563#issuecomment-1709607490
PR Comment: https://git.openjdk.org/jdk/pull/15563#issuecomment-1709610021
PR Comment: https://git.openjdk.org/jdk/pull/15563#issuecomment-1709815642
PR Comment: https://git.openjdk.org/jdk/pull/15563#issuecomment-1719651603


More information about the build-dev mailing list