Skip to content

[secondary_super_cache][fastdebug][x86_64]-Xcomp -XX:-TieredCompilation选项下com/sun/management/GarbageCollectorMXBean/GarbageCollectionNotificationContentTest.java报错Used size at G1 Old Gen should be decreased #911

@sendaoYan

Description

@sendaoYan

默认:https://tone.aliyun-inc.com/ws/xesljfzh/test_result/427718?tab=3
false:https://tone.aliyun-inc.com/ws/xesljfzh/test_result/427657?tab=1
true:https://tone.aliyun-inc.com/ws/xesljfzh/test_result/427676?tab=3
【环境准备】

BINARY_URL=oss://compiler-ci-bucket/dragonwell11/CI/tar/20241218-003913-968-#597-linux.x86_64.fastdebug.master-b985104eabca8b542fb0e96fb02570b4c4323386.jdk.tar.gz
TEST_IMAGE=oss://compiler-ci-bucket/dragonwell11/CI/tar/20241218-003913-968-#597-linux.x86_64.fastdebug.master-b985104eabca8b542fb0e96fb02570b4c4323386.test-image.tar.gz
JTREG_URL=oss://compiler-ci-bucket/jdk/tools/jtreg-7.3.1.1.zip
[email protected]:dragonwell-project/dragonwell11.git
JDK_BRANCH=master
cd ~/tone/tone-matrix-compiler/common;./ossutil.bin_$(arch) -i;cd -
alias oss="~/tone/tone-matrix-compiler/common/ossutil.bin_$(arch) -e oss-cn-hangzhou.aliyuncs.com -u jvm_dev-b  ~/tone/tone-matrix-compiler/common/ossutil_bin/ossutil -o download -f -r"

部署二进制:
oss $BINARY_URL -l ${BINARY_URL##*/}
mkdir bin-dragonwell11;tar -xf ${BINARY_URL##*/} -C bin-dragonwell11
oss $TEST_IMAGE-l ${TEST_IMAGE##*/}
mkdir images-dragonwell11;tar -xf ${BINARY_URL##*/} -C images-dragonwell11

部署jtreg工具:
oss $JTREG_URL -l ${JTREG_URL##*/};unzip ${JTREG_URL##*/}

部署用例repo
git clone -b $JDK_BRANCH $JDK_REPO jdk-repo-dragonwell11

执行以下命令:
cd bin-dragonwell11&& export JAVA_HOME=$PWD ; export PATH=$JAVA_HOME/bin:$PATH ; export TEST_JDK_HOME=$JAVA_HOME && cd -
cd jtreg ;export JT_HOME=$PWD ; export PATH=$PWD/bin:$PATH;cd -
export test=jdk-repo-dragonwell11/test/jdk/com/sun/management/GarbageCollectorMXBean/GarbageCollectionNotificationContentTest.java

false:jtreg  -nr -v:fail,error -w tmp   -Xcomp -XX:-TieredCompilation -XX:+UnlockDiagnosticVMOptions -XX:+StressSecondarySupers -XX:+VerifySecondarySupers -ea -esa  $test

true:jtreg  -nr -v:fail,error -w tmp    -Xcomp -XX:-TieredCompilation -XX:+UnlockDiagnosticVMOptions -XX:-InlineSecondarySupersTest -XX:-UseSecondarySupersTable -XX:-UseSecondarySupersCache -ea -esa $test

【对比测试】

aarch64正常,x86_64失败

dragonwell11 默认选项90%概率 fail,dragonwell21默认选项没问题	
-Xcomp -XX:-TieredCompilation

打开false选项   fail
-Xcomp -XX:-TieredCompilation -XX:+UnlockDiagnosticVMOptions -XX:+StressSecondarySupers -XX:+VerifySecondarySupers

关闭true选项   fail
-Xcomp -XX:-TieredCompilation -XX:+UnlockDiagnosticVMOptions -XX:-InlineSecondarySupersTest -XX:-UseSecondarySupersTable -XX:-UseSecondarySupersCache

【用例日志】

STDERR:
/home/dongzhichun/tone/dragonwell11/jdk-repo-dragonwell11/test/jdk/com/sun/management/GarbageCollectorMXBean/GarbageCollectionNotificationContentTest.java:82: warning: ManagementFactoryHelper is internal proprietary API and may be removed in a future release
                 sun.management.ManagementFactoryHelper.getVMManagement().isGcNotificationSupported();
                               ^
1 warning

ACTION: main -- Failed. Execution failed: `main' threw exception: java.lang.RuntimeException: Used size at G1 Old Gen should be decreased.
REASON: User specified action: run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI -Xms64m -Xmx64m GarbageCollectionNotificationContentTest
TIME:   25.062 seconds
messages:
command: main -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI -Xms64m -Xmx64m GarbageCollectionNotificationContentTest
reason: User specified action: run main/othervm -Xbootclasspath/a:. -XX:+UnlockDiagnosticVMOptions -XX:+WhiteBoxAPI -Xms64m -Xmx64m GarbageCollectionNotificationContentTest
started: Mon Dec 23 11:02:23 CST 2024
Mode: othervm [/othervm specified]
Additional options from @modules: --add-modules java.management,jdk.management --add-exports java.management/sun.management=ALL-UNNAMED
finished: Mon Dec 23 11:02:48 CST 2024
elapsed time (seconds): 25.062
configuration:
Boot Layer
  add modules: java.management jdk.management
  add exports: java.management/sun.management ALL-UNNAMED

STDOUT:
GC notification for G1 Young Generation
Action: end of minor GC Cause: G1 Evacuation Pause
GC Info #1 start:22969 end:22971 (2ms)
Usage for pool CodeCache
   Before GC: init = 2555904(2496K) used = 14624384(14281K) committed = 14680064(14336K) max = 50331648(49152K)
   After GC: init = 2555904(2496K) used = 14624384(14281K) committed = 14680064(14336K) max = 50331648(49152K)
Usage for pool G1 Old Gen
   Before GC: init = 39845888(38912K) used = 2154752(2104K) committed = 39845888(38912K) max = 67108864(65536K)
   After GC: init = 39845888(38912K) used = 1130752(1104K) committed = 25165824(24576K) max = 67108864(65536K)
Usage for pool G1 Survivor Space
   Before GC: init = 0(0K) used = 0(0K) committed = 0(0K) max = -1(-1K)
   After GC: init = 0(0K) used = 1048576(1024K) committed = 1048576(1024K) max = -1(-1K)
Usage for pool Compressed Class Space
   Before GC: init = 0(0K) used = 1118152(1091K) committed = 1310720(1280K) max = 1073741824(1048576K)
   After GC: init = 0(0K) used = 1118152(1091K) committed = 1310720(1280K) max = 1073741824(1048576K)
Usage for pool Metaspace
   Before GC: init = 0(0K) used = 14426264(14088K) committed = 14942208(14592K) max = -1(-1K)
   After GC: init = 0(0K) used = 14426264(14088K) committed = 14942208(14592K) max = -1(-1K)
Usage for pool G1 Eden Space
   Before GC: init = 27262976(26624K) used = 25165824(24576K) committed = 27262976(26624K) max = -1(-1K)
   After GC: init = 27262976(26624K) used = 0(0K) committed = 40894464(39936K) max = -1(-1K)
GC notification for G1 Old Generation
Action: end of major GC Cause: System.gc()
GC Info #1 start:22871 end:22949 (78ms)
Usage for pool CodeCache
   Before GC: init = 2555904(2496K) used = 14597888(14255K) committed = 14614528(14272K) max = 50331648(49152K)
   After GC: init = 2555904(2496K) used = 14597888(14255K) committed = 14614528(14272K) max = 50331648(49152K)
Usage for pool G1 Old Gen
   Before GC: init = 39845888(38912K) used = 0(0K) committed = 39845888(38912K) max = 67108864(65536K)
   After GC: init = 39845888(38912K) used = 2154752(2104K) committed = 39845888(38912K) max = 67108864(65536K)
Usage for pool G1 Survivor Space
   Before GC: init = 0(0K) used = 0(0K) committed = 0(0K) max = -1(-1K)
   After GC: init = 0(0K) used = 0(0K) committed = 0(0K) max = -1(-1K)
Usage for pool Compressed Class Space
   Before GC: init = 0(0K) used = 1117016(1090K) committed = 1310720(1280K) max = 1073741824(1048576K)
   After GC: init = 0(0K) used = 1117016(1090K) committed = 1310720(1280K) max = 1073741824(1048576K)
Usage for pool Metaspace
   Before GC: init = 0(0K) used = 14424864(14086K) committed = 14942208(14592K) max = -1(-1K)
   After GC: init = 0(0K) used = 14424864(14086K) committed = 14942208(14592K) max = -1(-1K)
Usage for pool G1 Eden Space
   Before GC: init = 27262976(26624K) used = 7340032(7168K) committed = 27262976(26624K) max = -1(-1K)
   After GC: init = 27262976(26624K) used = 0(0K) committed = 27262976(26624K) max = -1(-1K)
GC notification for G1 Concurrent GC
Action: end of concurrent GC pause Cause: No GC
GC Info #1 start:23248 end:23287 (39ms)
Usage for pool CodeCache
   Before GC: init = 2555904(2496K) used = 14775552(14429K) committed = 14811136(14464K) max = 50331648(49152K)
   After GC: init = 2555904(2496K) used = 14775552(14429K) committed = 14811136(14464K) max = 50331648(49152K)
Usage for pool G1 Old Gen
   Before GC: init = 39845888(38912K) used = 1139200(1112K) committed = 25165824(24576K) max = 67108864(65536K)
   After GC: init = 39845888(38912K) used = 1139200(1112K) committed = 25165824(24576K) max = 67108864(65536K)
STDERR:
java.lang.RuntimeException: Used size at G1 Old Gen should be decreased.
        at GarbageCollectionNotificationContentTest.checkMemoryUsage(GarbageCollectionNotificationContentTest.java:179)
        at GarbageCollectionNotificationContentTest.checkGarbageCollectionNotificationInfoContent(GarbageCollectionNotificationContentTest.java:161)
        at GarbageCollectionNotificationContentTest.main(GarbageCollectionNotificationContentTest.java:127)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at java.base/jdk.internal.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
        at java.base/jdk.internal.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
        at java.base/java.lang.reflect.Method.invoke(Method.java:566)
        at com.sun.javatest.regtest.agent.MainWrapper$MainTask.run(MainWrapper.java:138)
        at java.base/java.lang.Thread.run(Thread.java:955)

JavaTest Message: Test threw exception: java.lang.RuntimeException: Used size at G1 Old Gen should be decreased.
JavaTest Message: shutting down test

【jdk信息】

java -version;java -Xinternalversion
openjdk version "11.0.25-internal" 2024-10-15
OpenJDK Runtime Environment (fastdebug build 11.0.25-internal+0-adhoc..dragonwell11.nightly.pipeline)
OpenJDK 64-Bit Server VM (fastdebug build 11.0.25-internal+0-adhoc..dragonwell11.nightly.pipeline, mixed mode)
OpenJDK 64-Bit Server VM (fastdebug 11.0.25-internal+0-adhoc..dragonwell11.nightly.pipeline) for linux-amd64 JRE (11.0.25-internal+0-adhoc..dragonwell11.nightly.pipeline), built on Dec 17 2024 16:39:47 by "" with gcc 7.5.0

【系统版本信息】

uname -a ; cat /etc/os-release ; free -h ; lscpu | head -n 25
Linux CompilerTest-x64-3 5.10.134-16.1.al8.x86_64 #1 SMP Thu Dec 7 14:11:24 UTC 2023 x86_64 x86_64 x86_64 GNU/Linux
NAME="Alibaba Cloud Linux"
VERSION="3 (Soaring Falcon)"
ID="alinux"
ID_LIKE="rhel fedora centos anolis"
VERSION_ID="3"
UPDATE_ID="9"
PLATFORM_ID="platform:al8"
PRETTY_NAME="Alibaba Cloud Linux 3 (Soaring Falcon)"
ANSI_COLOR="0;31"
HOME_URL="https://www.aliyun.com/"

              total        used        free      shared  buff/cache   available
Mem:          123Gi       1.0Gi       112Gi       4.0Mi        10Gi       121Gi
Swap:            0B          0B          0B
Architecture:        x86_64
CPU op-mode(s):      32-bit, 64-bit
Byte Order:          Little Endian
CPU(s):              32
On-line CPU(s) list: 0-31
Thread(s) per core:  2
Core(s) per socket:  16
Socket(s):           1
NUMA node(s):        1
Vendor ID:           GenuineIntel
CPU family:          6
Model:               106
Model name:          Intel(R) Xeon(R) Platinum 8369B CPU @ 2.70GHz
Stepping:            6
CPU MHz:             3523.876
BogoMIPS:            5399.99
Hypervisor vendor:   KVM
Virtualization type: full
L1d cache:           48K
L1i cache:           32K
L2 cache:            1280K
L3 cache:            49152K
NUMA node0 CPU(s):   0-31
Flags:               fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ss ht syscall nx pdpe1gb rdtscp lm constant_tsc rep_good nopl nonstop_tsc cpuid aperfmperf tsc_known_freq pni pclmulqdq monitor ssse3 fma cx16 pcid sse4_1 sse4_2 x2apic movbe popcnt aes xsave avx f16c rdrand hypervisor lahf_lm abm 3dnowprefetch cpuid_fault invpcid_single ibrs_enhanced fsgsbase tsc_adjust bmi1 avx2 smep bmi2 erms invpcid avx512f avx512dq rdseed adx smap avx512ifma clflushopt clwb avx512cd sha_ni avx512bw avx512vl xsaveopt xsavec xgetbv1 xsaves wbnoinvd arat avx512vbmi pku ospke avx512_vbmi2 gfni vaes vpclmulqdq avx512_vnni avx512_bitalg avx512_vpopcntdq rdpid fsrm arch_capabilities

Metadata

Metadata

Assignees

Labels

No labels
No labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions