GraalVM

Downloads

https://github.com/oracle/graal/releases

https://www.graalvm.org/docs/getting-started/

https://www.graalvm.org/docs/reference-manual/languages/jvm/#running-jvm-based-apps

Benchmarking

$ export PATH=/path/to/graalvm/Contents/Home/bin:$PATH
$ java -version
openjdk version "1.8.0_172"
OpenJDK Runtime Environment (build 1.8.0_172-20180626105433.graaluser.jdk8u-src-tar-g-b11)
GraalVM 1.0.0-rc6 (build 25.71-b01-internal-jvmci-0.48, mixed mode)
$ ./netkernel.sh
NKPerf10 Test GraalVM 1.0.0-rc6

NKPerf10 Test GraalVM 1.0.0-rc6

$ java -version
java version "1.8.0_66"
Java(TM) SE Runtime Environment (build 1.8.0_66-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.66-b17, mixed mode)
$ ./netkernel.sh
NKPerf10 Test Hotspot 1.8.0.66

NKPerf10 Test Hotspot 1.8.0.66

Conclusion

  1. It works!
  2. No significant performance difference between GraalVM and Hotspot
  3. Would love to try and write a GraalVM - enabled language runtime module. Endpoints written in C!