-
Bug
-
Resolution: Fixed
-
P2
-
24
-
b22
It looks like a new command in the JDK source increased the build memory requirements substantially.
Windows 11 (23H2)
VirtualBox 7.0.22
Ubuntu Linux guest-6.5.0-45-generic
8192 MB of memory/2GB swap space
8 processors
100GB disk space with about 65% used.
Yesterday, I resynced to the master, and the build now hangs the guest OS. Keyboard/mouse/monitor of the guest OS are unresponsive (or just barely). The host OS is fine (browsing/email/etc.).
I was able to start top before getting to this point. My cc1plus was pegged at 90% memory, and root's kswapd is thrashing with 100% CPU. (see attached image)
Barely responsive to ^C. If I'm able to get a ^C through, the system goes back to normal once the processes die.
I increased my memory to 16GB, and everything went back to normal. In the new 16GB build, I did notice cc1plus topped out at 52% memory usage, which would be consistent with the memory usage/hangs I saw earlier.
I was able to isolate to a specific command in the build:
% g++ ...deleted...\
/java/ws/jdk/build/linux-x64/hotspot/variant-server/libjvm/gtest/objs/test_assemblerx86.o \
/java/ws/jdk/open/test/hotspot/gtest/x86/test_assemblerx86.cpp
The full command shell script is attached in the attached file.
This command pegged the memory at 52% of the 16GB instance. (attached image).
Machine config:
% /java/ws/jdk/build/linux-x64/jdk/bin/java -Xlog:os+cpu=info -version
[0.009s][info][os,cpu] CPU: total 8 (initial active 8) (8 cores per cpu, 1 threads per core) family 6 model 141 stepping 1 microcode 0xffffffff, cx8, cmov, fxsr, mmx, 3dnowpref, sse, sse2, sse3, ssse3, sse4.1, sse4.2, popcnt, lzcnt, tsc, tscinvbit, aes, clmul, bmi1, bmi2, clflush, clflushopt, hv, rdtscp
[0.009s][info][os,cpu] CPU Model and flags from /proc/cpuinfo:
[0.009s][info][os,cpu] model name : 11th Gen Intel(R) Core(TM) i7-11850H @ 2.50GHz
[0.009s][info][os,cpu] flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx rdtscp lm constant_tsc rep_good nopl xtopology nonstop_tsc cpuid tsc_known_freq pni pclmulqdq ssse3 cx16 pcid sse4_1 sse4_2 movbe popcnt aes rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single ibrs_enhanced fsgsbase bmi1 bmi2 invpcid rdseed clflushopt arat md_clear flush_l1d arch_capabilities
[0.009s][info][os,cpu]
[0.009s][info][os,cpu] Online cpus: 0-7
[0.009s][info][os,cpu] Offline cpus:
[0.009s][info][os,cpu] BIOS frequency limitation: <Not Available>
[0.009s][info][os,cpu] Frequency switch latency (ns): <Not Available>
[0.009s][info][os,cpu] Available cpu frequencies: <Not Available>
[0.009s][info][os,cpu] Current governor: <Not Available>
[0.009s][info][os,cpu] Core performance/turbo boost: <Not Available>
java version "24-internal" 2025-03-18
Java(TM) SE Runtime Environment (build 24-internal-2024-10-22-2322037.brwetmor...)
Java HotSpot(TM) 64-Bit Server VM (build 24-internal-2024-10-22-2322037.brwetmor..., mixed mode)
Windows 11 (23H2)
VirtualBox 7.0.22
Ubuntu Linux guest-6.5.0-45-generic
8192 MB of memory/2GB swap space
8 processors
100GB disk space with about 65% used.
Yesterday, I resynced to the master, and the build now hangs the guest OS. Keyboard/mouse/monitor of the guest OS are unresponsive (or just barely). The host OS is fine (browsing/email/etc.).
I was able to start top before getting to this point. My cc1plus was pegged at 90% memory, and root's kswapd is thrashing with 100% CPU. (see attached image)
Barely responsive to ^C. If I'm able to get a ^C through, the system goes back to normal once the processes die.
I increased my memory to 16GB, and everything went back to normal. In the new 16GB build, I did notice cc1plus topped out at 52% memory usage, which would be consistent with the memory usage/hangs I saw earlier.
I was able to isolate to a specific command in the build:
% g++ ...deleted...\
/java/ws/jdk/build/linux-x64/hotspot/variant-server/libjvm/gtest/objs/test_assemblerx86.o \
/java/ws/jdk/open/test/hotspot/gtest/x86/test_assemblerx86.cpp
The full command shell script is attached in the attached file.
This command pegged the memory at 52% of the 16GB instance. (attached image).
Machine config:
% /java/ws/jdk/build/linux-x64/jdk/bin/java -Xlog:os+cpu=info -version
[0.009s][info][os,cpu] CPU: total 8 (initial active 8) (8 cores per cpu, 1 threads per core) family 6 model 141 stepping 1 microcode 0xffffffff, cx8, cmov, fxsr, mmx, 3dnowpref, sse, sse2, sse3, ssse3, sse4.1, sse4.2, popcnt, lzcnt, tsc, tscinvbit, aes, clmul, bmi1, bmi2, clflush, clflushopt, hv, rdtscp
[0.009s][info][os,cpu] CPU Model and flags from /proc/cpuinfo:
[0.009s][info][os,cpu] model name : 11th Gen Intel(R) Core(TM) i7-11850H @ 2.50GHz
[0.009s][info][os,cpu] flags : fpu vme de pse tsc msr pae mce cx8 apic sep mtrr pge mca cmov pat pse36 clflush mmx fxsr sse sse2 ht syscall nx rdtscp lm constant_tsc rep_good nopl xtopology nonstop_tsc cpuid tsc_known_freq pni pclmulqdq ssse3 cx16 pcid sse4_1 sse4_2 movbe popcnt aes rdrand hypervisor lahf_lm abm 3dnowprefetch invpcid_single ibrs_enhanced fsgsbase bmi1 bmi2 invpcid rdseed clflushopt arat md_clear flush_l1d arch_capabilities
[0.009s][info][os,cpu]
[0.009s][info][os,cpu] Online cpus: 0-7
[0.009s][info][os,cpu] Offline cpus:
[0.009s][info][os,cpu] BIOS frequency limitation: <Not Available>
[0.009s][info][os,cpu] Frequency switch latency (ns): <Not Available>
[0.009s][info][os,cpu] Available cpu frequencies: <Not Available>
[0.009s][info][os,cpu] Current governor: <Not Available>
[0.009s][info][os,cpu] Core performance/turbo boost: <Not Available>
java version "24-internal" 2025-03-18
Java(TM) SE Runtime Environment (build 24-internal-2024-10-22-2322037.brwetmor...)
Java HotSpot(TM) 64-Bit Server VM (build 24-internal-2024-10-22-2322037.brwetmor..., mixed mode)
- relates to
-
JDK-8339507 Test generation tool and gtest for testing APX encoding of extended gpr instructions
- Resolved
- links to
-
Commit(master) openjdk/jdk/7d5eefa5
-
Review(master) openjdk/jdk/21670