RFR: 8058176: [mlvm] tests should not allow code cache exhaustion [v2]

Igor Ignatyev iignatyev at openjdk.java.net
Fri Feb 12 20:08:40 UTC 2021


On Fri, 12 Feb 2021 18:22:52 GMT, Evgeny Nikitin <enikitin at openjdk.org> wrote:

>> Another approach to the JDK-8058176 and #2440 - never allowing the tests hit CodeCache limits. The most significant consumer is the MH graph builder (the MHTransformationGen), whose consumption is now controlled. List of changes:
>> 
>> * Code cache size getters are added to WhiteBox;
>> * MH sequences are now built with remaining Code cache size in mind (always let 2M clearance);
>> * Dependencies on WhiteBox added for all affected tests;
>> * The test cases in question un-problemlisted.
>> 
>> Testing: the whole vmTestbase/vm/mlvm/ in win-lin-mac x86.
>
> Evgeny Nikitin has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Switch to ManagementBeans approach instead of the WhiteBox one

test/hotspot/jtreg/vmTestbase/vm/mlvm/meth/share/MHTransformationGen.java line 107:

> 105:             if (isCodeCacheEffectivelyFull()) {
> 106:                 Env.traceNormal("Not enought code cache to build up MH sequences anymore. " +
> 107:                         " Has only been able to achieve " + (MAX_CYCLES - i) + " out of " + MAX_CYCLES);

given `nextInt(x)` returns a random number from `[0; x]`, we might have achieved more (or less) `MAX_CYCLES - i`, i.e. that part of the message is incorrect, I'd just remove it.

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

PR: https://git.openjdk.java.net/jdk/pull/2523


More information about the hotspot-dev mailing list