RFR: 8315770: serviceability/sa/TestJmapCoreMetaspace.java should run with -XX:-VerifyDependencies [v3]
Aleksey Shipilev
shade at openjdk.org
Mon Sep 11 11:02:04 UTC 2023
On Mon, 11 Sep 2023 10:56:51 GMT, Soumadipta Roy <duke at openjdk.org> wrote:
>> 8315770: serviceability/sa/TestJmapCoreMetaspace.java should run with -XX:-VerifyDependencies
>>
>> serviceability/sa/TestJmapCoreMetaspace.java runs in hotspot:tier2, and takes about 330 seconds out of 670 seconds of the entire run on x86_64 fastdebug. The tier2 completion usually waits on it. Profiling shows we are spending time during classloading, checking dependencies. Since we load lots of classes, we do it many times, and each time the cost grows linearly to the number of classes. Some other tests that target metaspace explicitly disable `VerifyDependencies` to avoid this.
>>
>> The commit includes adding "-XX:-VerifyDependencies" along with "-XX:+IgnoreUnrecognizedVMOptions" in TestJmapCore.java to make sure that release builds work with the test, as VerifyDependencies is a develop option and not available in release builds. The changes in the commit are resulting in considerable improvement for the test in fastdebug mode as can be seen below:
>>
>> * before: **130.41s user 14.11s system 118% cpu 2:01.85 total**
>> * after: **27.52s user 13.64s system 213% cpu 19.249 total**
>
> Soumadipta Roy has updated the pull request incrementally with one additional commit since the last revision:
>
> Replace IgnoreUnrecognizedVMOptions with Platform.isDebugBuild() and add comment about the change forbetter readability.
Still good.
-------------
Marked as reviewed by shade (Reviewer).
PR Review: https://git.openjdk.org/jdk/pull/15631#pullrequestreview-1619705810
More information about the serviceability-dev
mailing list