Sorry if this is the wrong forum, I’m not sure where the right one is.
This is meant for the JVM developers/architects/designers…
My basic desire would be to somehow make java apps as fast as C ones,
esp. for starting up.
It seems to me that java apps run this way, on the hotspot server JVM:
start once, it runs, does warmup → bytecode, then runs fast, then
exits.
start again, it runs, does warmup → bytecode, then runs fast, then
exits.
Now assuming that it always has the same jars, shouldn’t it be able to
cache the JVM → bytecode “hot compilation” from one run to the next?
You know, something like GCC’s profile guided optimization option.
Something like icegrind’s optimized load time algorithm would be helpful
too [1]. I guess there’s a minijar maven plugin, but is there more?
(and minijar can’t be used in all cases).
Or perhaps there could be some magic made that’s like “take these jars,
convert them all into .so files that can interlink, and now java is a
fast loading as C is”? or “take these jars and this JVM, combine them
all into one lightning fast .exe file” or the like?
Is there anything out there like this? It’s the last hurdle preventing
java from becoming mainstream, I believe…
Pretty Please?
Ok that’s all I’m going to say.
Thanks!
-=r