Re: 100x startup for Clojure using GraalVM

2019-11-12 Thread Andy Fingerhut
I believe at least some of the people working on this, and interested in these results, would like to use Clojure for command line utilities and such, which tend to have quite short run times when implemented in C/C++/Python/etc. They are probably much less interested in using these methods for

Re: 100x startup for Clojure using GraalVM

2019-11-12 Thread 'Gerard Klijs' via Clojure
Hello world is fun, but doesn't say much. I would like to see benchmarks on the actual application. Ideally it would take several jvm's so also Graal and J9 and also use the commercial version of making a native image, asses how much memory is needed when run on the JVM and limit that, since

Re: 100x startup for Clojure using GraalVM

2019-11-12 Thread Alan Thompson
A quick comparison with python: > time python -c 'print("Hello world!")' Hello world! 0.03s user 0.01s system 80% cpu 0.048 total > /usr/bin/time -l python -c 'print("Hello world!")' Hello world! 0.04 real 0.02 user 0.01 sys 6 maximum resident set size (MB)

Re: 100x startup for Clojure using GraalVM

2019-11-12 Thread Nate Sutton
Another way to achieve fast startup is to compile clojurescript to a nodejs target and then use the nodejs library called pkg to bundle the nodejs binary with the script. I haven't timed it but it's an interesting alternative. On Tue, Nov 12, 2019 at 12:46 PM Colin Yates wrote: > Do we have any

Re: 100x startup for Clojure using GraalVM

2019-11-12 Thread Colin Yates
Do we have any idea how that memory saving scales? I know a bunch of meta data isn’t needed as it is hotspot specific, but are there any other memory savings? Sent from my iPhone > On 12 Nov 2019, at 18:42, Alan Thompson wrote: > > In my initial post, I failed to mention the huge memory

Re: 100x startup for Clojure using GraalVM

2019-11-12 Thread Alan Thompson
In my initial post, I failed to mention the huge memory savings achieved by the standalone executable (in addition to the startup time savings). Note that using *time* at the command line resolves to a shell built-in command. We can get more information from the standard Unix version of time: #