4 ms·
See also the mail from Mark Reinhold http://mail.openjdk.java.net/pipermail/announce/2017-September/000230.html http://mail.openjdk.java.net/pipermail/announce/
by karussell 9y ago
See also the mail from Mark Reinhold
http://mail.openjdk.java.net/pipermail/announce/2017-September/000230.html http://mail.openjdk.java.net/pipermail/announce/2017-Septemb...
This AOT compilation feature is interesting, didn't know that it is in JDK9 ... will it allow JDK9 libraries run on iOS? http://openjdk.java.net/jeps/295 http://openjdk.java.net/jeps/295
- bpicolo 9y agoSeems limited? "AOT compilation of any JDK modules, classes, or of user code, is experimental and not supported in JDK 9." ...Unclear (to me) what that means
- stickydink 9y agoAOT initial release in JDK 9 is provided for experimental-only use and is restricted to Linux x64 systems running 64-bit Java with either Parallel or G1 GC. Initially not, but, iOS is specifically mentioned here http://bugs.openjdk.java.net/browse/JDK-8167428 http://bugs.openjdk.java.net/browse/JDK-8167428
- karussell 9y agoThanks also for the link!
- WatchDog 9y agoYou still need a full JVM to execute the compiled code, it's mainly just an optimisation to improve startup time.
- deadc0de 9y agoHere is a talk about it at JVMLS'17: https://youtu.be/n5DCg6M2MDM https://youtu.be/n5DCg6M2MDM
- needusername 9y agoIt sounds interesting until you remember what a hassle native compilation is: 1. you need to compile on the exact same CPU make on model that you will run on (for now there's not cross compilation) 2. you need to compile with the exact same memory settings, including GC selection, that you will run on 3. unless you're cool with binaries that are hundreds of megabytes you will first need to do a profiling run an determine which classes and methods you want to compile 4. you will need to decide if startup time or ultimate performance is more important than you 5. in the end you probably get a better startup time out of -noverify