RFR: 8330969: scalability issue with loaded JVMTI agent [v2]

Serguei Spitsyn sspitsyn at openjdk.org
Fri Apr 26 07:45:50 UTC 2024


> This is a fix of the following JVMTI scalability issue. A closed benchmark with millions of virtual threads shows 3X-4X overhead when a JVMTI agent has been loaded. For instance, this is observable when an app is executed under control of the Oracle Studio `collect` utility.
> For performance analysis, experiments and numbers, please, see the comment below this description.
> 
> The fix is to replace the global counter `_VTMS_transition_count` with the mark bit `_VTMS_transition_mark` in each `JavaThread`'.
> 
> Testing:
>  - Tested with mach5 tiers 1-6

Serguei Spitsyn has updated the pull request incrementally with one additional commit since the last revision:

  review: fixed minor issues: renamed function, corrected comment, removed typo in assert

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

Changes:
  - all: https://git.openjdk.org/jdk/pull/18937/files
  - new: https://git.openjdk.org/jdk/pull/18937/files/6e1bf369..03bcfecb

Webrevs:
 - full: https://webrevs.openjdk.org/?repo=jdk&pr=18937&range=01
 - incr: https://webrevs.openjdk.org/?repo=jdk&pr=18937&range=00-01

  Stats: 6 lines in 3 files changed: 0 ins; 0 del; 6 mod
  Patch: https://git.openjdk.org/jdk/pull/18937.diff
  Fetch: git fetch https://git.openjdk.org/jdk.git pull/18937/head:pull/18937

PR: https://git.openjdk.org/jdk/pull/18937


More information about the serviceability-dev mailing list