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

Emanuel Peter epeter at openjdk.org
Tue Apr 22 15:11:48 UTC 2025


On Wed, 9 Apr 2025 18:17:57 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 two additional commits since the last revision:
> 
>  - reduce array/node size limts and remove the timeout
>  - reduce array/node size limts and remove the timeout

FYI: github actions tells me that your added regression test is failing `TestScalarizeBailout.java`, are you aware of that?

https://github.com/dhanalla/jdk/actions/runs/14364146583/job/40274556990


# A fatal error has been detected by the Java Runtime Environment:
#
#  Internal Error (/home/runner/work/jdk/jdk/src/hotspot/share/opto/node.cpp:78), pid=8112, tid=8129
#  assert(C->live_nodes() <= C->max_node_limit()) failed: Live Node limit exceeded limit
#
# JRE version: OpenJDK Runtime Environment (24.0) (fastdebug build 24-internal-dhanalla-a8cb47d6f392524d5b96528e398ebfc15847b693)
# Java VM: OpenJDK 64-Bit Server VM (fastdebug 24-internal-dhanalla-a8cb47d6f392524d5b96528e398ebfc15847b693, compiled mode, sharing, compressed oops, compressed class ptrs, g1 gc, linux-amd64)
# Problematic frame:
# V  [libjvm.so+0x1490e77]  Node::verify_construction()+0x1a7
#
# CreateCoredumpOnCrash turned off, no core file dumped
#
# An error report file with more information is saved as:
# /home/runner/work/jdk/jdk/build/run-test-prebuilt/test-support/jtreg_test_hotspot_jtreg_tier1_compiler_2/scratch/0/hs_err_pid8112.log
#
# Compiler replay data is saved as:
# /home/runner/work/jdk/jdk/build/run-test-prebuilt/test-support/jtreg_test_hotspot_jtreg_tier1_compiler_2/scratch/0/replay_pid8112.log

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

PR Comment: https://git.openjdk.org/jdk/pull/20504#issuecomment-2821646416


More information about the hotspot-compiler-dev mailing list