forked from oracle/graal
-
Notifications
You must be signed in to change notification settings - Fork 16
Open
Labels
Description
CI on GitHub actions which is an important bit of information as the GHA MacOs aarch64 is virtualized and GitHub customized, caught an error log line with a rudimentary non-Quarkus test app and native-image JFR:
[error][jfr ] Thread method sampler crashed
I haven't tried to reproduce it on our baremetal yet.
Full log:
native-image --enable-monitoring=jfr -jar target/debug-symbols-smoke.jar target/debug-symbols-smoke
Command: native-image --enable-monitoring=jfr -jar target/debug-symbols-smoke.jar target/debug-symbols-smoke
========================================================================================================================
GraalVM Native Image: Generating 'debug-symbols-smoke' (executable)...
========================================================================================================================
For detailed information and explanations on the build output, visit:
https://github.com/oracle/graal/blob/master/docs/reference-manual/native-image/BuildOutput.md
------------------------------------------------------------------------------------------------------------------------
[1/8] Initializing... (5.6s @ 0.10GB)
Java version: 24+36, vendor version: Mandrel-24.2.0.0-Final
Graal compiler: optimization level: 2, target machine: armv8.1-a
C compiler: cc (apple, arm64, 16.0.0)
Garbage collector: Serial GC (max heap size: 80% of RAM)
1 user-specific feature(s):
- com.oracle.svm.thirdparty.gson.GsonFeature
------------------------------------------------------------------------------------------------------------------------
Build resources:
- 5.29GB of memory (75.6% of 7.00GB system memory, determined at start)
- 3 thread(s) (100.0% of 3 available processor(s), determined at start)
[2/8] Performing analysis... [****] (25.1s @ 0.43GB)
4,677 reachable types (76.5% of 6,110 total)
5,590 reachable fields (45.4% of 12,317 total)
21,651 reachable methods (48.8% of 44,332 total)
1,475 types, 13 fields, and 300 methods registered for reflection
58 types, 58 fields, and 52 methods registered for JNI access
5 native libraries: -framework Foundation, dl, m, pthread, z
[3/8] Building universe... (3.7s @ 0.46GB)
[4/8] Parsing methods... [**] (3.0s @ 0.52GB)
[5/8] Inlining methods... [***] (3.5s @ 0.55GB)
[6/8] Compiling methods... [*****] (25.9s @ 0.73GB)
[7/8] Laying out methods... [**] (2.4s @ 0.47GB)
[8/8] Creating image... [**] (2.5s @ 0.54GB)
7.61MB (38.15%) for code area: 12,591 compilation units
11.88MB (59.52%) for image heap: 162,751 objects and 55 resources
475.31kB ( 2.33%) for other data
19.95MB in total
------------------------------------------------------------------------------------------------------------------------
Top 10 origins of code area: Top 10 object types in image heap:
5.24MB java.base 2.22MB byte[] for java.lang.String
1.25MB svm.jar (Native Image) 2.15MB byte[] for code metadata
689.73kB jdk.jfr 1.52MB java.lang.String
101.20kB java.logging 1.12MB java.lang.Class
96.79kB jdk.proxy1 438.47kB com.oracle.svm.core.hub.DynamicHubCompanion
66.61kB org.graalvm.nativeimage.base 320.66kB java.lang.Object[]
47.36kB jdk.proxy2 311.91kB java.util.HashMap$Node
20.41kB org.graalvm.collections 309.54kB java.lang.String[]
18.84kB jdk.internal.vm.ci 291.17kB byte[] for general heap data
11.63kB jdk.proxy3 216.43kB byte[] for reflection metadata
16.69kB for 6 more packages 3.02MB for 1256 more object types
------------------------------------------------------------------------------------------------------------------------
Recommendations:
HEAP: Set max heap for improved and more predictable memory usage.
CPU: Enable more CPU features with '-march=native' for improved performance.
------------------------------------------------------------------------------------------------------------------------
7.0s (9.4% of total time) in 364 GCs | Peak RSS: 1.15GB | CPU load: 2.12
------------------------------------------------------------------------------------------------------------------------
Build artifacts:
/Users/runner/work/mandrel-integration-tests/mandrel-integration-tests/ts/apps/debug-symbols-smoke/target/debug-symbols-smoke (executable)
========================================================================================================================
Finished generating 'debug-symbols-smoke' in 1m 13s.
Command: java -jar ./target/debug-symbols-smoke.jar
Q to quit
b6951775b0375ea13fc977581e54eb36d483e95ed3bc1e62fcb8da59830f1ef9
Command: java -XX:StartFlightRecording=filename=logs/flight-java.jfr -Xlog:jfr -jar ./target/debug-symbols-smoke.jar
[0.189s][info][jfr] Flight Recorder initialized
[0.189s][info][jfr] Repository base directory: /var/folders/x7/ch5v91h56_zbvbd1y2f600dm0000gn/T
[0.208s][info][jfr] Started recording "1" (1) {dumponexit=true, filename=/Users/runner/work/mandrel-integration-tests/mandrel-integration-tests/ts/apps/debug-symbols-smoke/logs/flight-java.jfr}
[0.208s][info][jfr,startup] Started recording 1. No limit specified, using maxsize=250MB as default.
[0.208s][info][jfr,startup]
[0.208s][info][jfr,startup] Use jcmd 3572 JFR.dump name=1 to copy recording data to file.
Q to quit
[1.484s][error][jfr ] Thread method sampler crashed
b6951775b0375ea13fc977581e54eb36d483e95ed3bc1e62fcb8da59830f1ef9
[1.798s][info ][jfr ] Stopped recording "1" (1). Reason "Dump on exit".
[1.812s][info ][jfr ] Transferred 433991 bytes from the disk repository
[1.818s][info ][jfr ] Wrote recording "1" (1) to /Users/runner/work/mandrel-integration-tests/mandrel-integration-tests/ts/apps/debug-symbols-smoke/logs/flight-java.jfr
[1.819s][info ][jfr ] Closed recording "1" (1)
[1.820s][info ][jfr ] Removed repository /private/var/folders/x7/ch5v91h56_zbvbd1y2f600dm0000gn/T/2025_07_18_08_18_22_3572
Command: ./target/debug-symbols-smoke
Q to quit
b6951775b0375ea13fc977581e54eb36d483e95ed3bc1e62fcb8da59830f1ef9
Command: ./target/debug-symbols-smoke -XX:+FlightRecorder -XX:StartFlightRecording=filename=logs/flight-native.jfr -XX:FlightRecorderLogging=jfr
[info][jfr] Added periodic task for EveryChunkPeriodEvents(10575)
[info][jfr] Added periodic task for EndChunkPeriodEvents(10580)
[info][jfr] Flight Recorder initialized
[info][jfr] Repository base directory: /var/folders/x7/ch5v91h56_zbvbd1y2f600dm0000gn/T
[info][jfr] Started recording "1" (1) {dumponexit=true, filename=/Users/runner/work/mandrel-integration-tests/mandrel-integration-tests/ts/apps/debug-symbols-smoke/logs/flight-native.jfr}
Q to quit
b6951775b0375ea13fc977581e54eb36d483e95ed3bc1e62fcb8da59830f1ef9
[info][jfr] Stopped recording "1" (1). Reason "Dump on exit".
[info][jfr] Transferred 221713 bytes from the disk repository
[info][jfr] Wrote recording "1" (1) to /Users/runner/work/mandrel-integration-tests/mandrel-integration-tests/ts/apps/debug-symbols-smoke/logs/flight-native.jfr
[info][jfr] Closed recording "1" (1)
[info][jfr] Removed repository /private/var/folders/x7/ch5v91h56_zbvbd1y2f600dm0000gn/T/2025_07_18_08_18_29_3609