Karm / mandrel-integration-tests

Integration tests for GraalVM and its Mandrel distribution. Runs Quarkus, Helidon and Micronaut applications and small targeted reproducers. The focus is solely on native-image utility and compilation of Java applications into native executables.
Apache License 2.0
5 stars 3 forks source link

Reintroduce Mandrel 21 sanity test #235

Closed Karm closed 7 months ago

Karm commented 7 months ago

It seems practical for certain parts of the TS to be able to run old Mandrel/Quarkus. I will let this run the whole CI and then use annotations to restrict it only to parts where it makes sense, e.g. FullMicroProfile app.

Karm commented 7 months ago

Looks like we can still get Q 2.13.3 x M 21.3 numbers as:

[
  {
    "arch": "amd64",
    "branchMisses": "-1",
    "branches": "-1",
    "contextSwitches": 22382,
    "coresAvailable": 4,
    "cpuMigrations": 3749,
    "cycles": "-1",
    "executableSizeKb": "-1",
    "file": "java -Xlog:gc -XX:+UseSerialGC -Xmx2560m -jar target/quarkus-app/quarkus-run.jar",
    "fullGCevents": "-1",
    "incrementalGCevents": "-1",
    "instructions": "-1",
    "jdkVersion": "11.0.19",
    "mandrelVersion": "21.3.6-final",
    "maxHeapSizeMB": 2560,
    "os": "Linux",
    "pageFaults": 44091,
    "quarkusVersion": "2.13.3.Final",
    "ramAvailableMB": 11874,
    "requestsExecuted": 100,
    "rssKb": 251008,
    "runnerDescription": "",
    "secondsTimeElapsed": "128.011842564",
    "taskClock": "13292.73",
    "testApp": "https://github.com/Karm/mandrel-integration-tests/apps/quarkus-full-microprofile/",
    "testMethod": "org.graalvm.tests.integration.PerfCheckTest#testQuarkusFullMicroProfile",
    "timeSpentInGCs": "0.025583",
    "timeToFirstOKRequestMs": 1499
  },
  {
    "arch": "amd64",
    "branchMisses": "-1",
    "branches": "-1",
    "contextSwitches": 7294,
    "coresAvailable": 4,
    "cpuMigrations": 931,
    "cycles": "-1",
    "executableSizeKb": 68569,
    "file": "./target/quarkus-runner -XX:+PrintGC",
    "fullGCevents": 0,
    "incrementalGCevents": 0,
    "instructions": "-1",
    "jdkVersion": "11.0.19",
    "mandrelVersion": "21.3.6-final",
    "maxHeapSizeMB": 2560,
    "os": "Linux",
    "pageFaults": 54701,
    "quarkusVersion": "2.13.3.Final",
    "ramAvailableMB": 11870,
    "requestsExecuted": 100,
    "rssKb": 277504,
    "runnerDescription": "",
    "secondsTimeElapsed": "122.033233657",
    "taskClock": "1639.21",
    "testApp": "https://github.com/Karm/mandrel-integration-tests/apps/quarkus-full-microprofile/",
    "testMethod": "org.graalvm.tests.integration.PerfCheckTest#testQuarkusFullMicroProfile",
    "timeSpentInGCs": "0.0",
    "timeToFirstOKRequestMs": 58
  }
]

So I'll leave it there, enabled in CI to prevent digital rot.