RFR: 8315916: assert(C->live_nodes() <= C->max_node_limit()) failed: Live Node limit exceeded [v9]

Christian Hagedorn chagedorn at openjdk.org
Wed Apr 9 05:44:45 UTC 2025


On Tue, 8 Apr 2025 05:52:44 GMT, Dhamoder Nalla <dhanalla at openjdk.org> wrote:

>> In the debug build, the assert is triggered during the parsing (before Code_Gen). In the Release build, however, the compilation bails out at `Compile::check_node_count()` during the code generation phase and completes execution without any issues.
>> 
>> When I commented out the assert(C->live_nodes() <= C->max_node_limit()), both the debug and release builds exhibited the same behavior: the compilation bails out during code_gen after building the ideal graph with more than 80K nodes.
>> 
>> The proposed fix will check the live node count and bail out during compilation while building the graph for scalarization of the elements in the array when the live node count crosses the limit of 80K, instead of unnecessarily building the entire graph and bailing out in code_gen.
>
> Dhamoder Nalla has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Modify jtreg test

test/hotspot/jtreg/compiler/escapeAnalysis/TestScalarizeBailout.java line 28:

> 26:  * @bug 8315916
> 27:  * @summary Test early bailout during the creation of graph nodes for the scalarization of array fields, rather than during code generation.
> 28:  * @run main/othervm/timeout=240000

That's a huge timeout. How long does this test need on your machine? If too long, can you also trigger the issue with a smaller `EliminateAllocationArraySizeLimit` than currently used?

test/hotspot/jtreg/compiler/escapeAnalysis/TestScalarizeBailout.java line 29:

> 27:  * @summary Test early bailout during the creation of graph nodes for the scalarization of array fields, rather than during code generation.
> 28:  * @run main/othervm/timeout=240000
> 29:  *                   -Xcomp

Can you limit the performed compilations to a single or few methods with `compileonly` to trigger the assert? This will reduce the required time to run this test with `Xcomp`.

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

PR Review Comment: https://git.openjdk.org/jdk/pull/20504#discussion_r2034482721
PR Review Comment: https://git.openjdk.org/jdk/pull/20504#discussion_r2034484564


More information about the hotspot-compiler-dev mailing list