Discussion:
ANN Drip: A fast JVM launcher
Chris Altman
2013-01-23 18:20:02 UTC
Permalink
I'm getting the same behavior. Has there been any action on this?
I'm getting the same multiple JVM starting behavior on Arch Linux using
lein 2.0.0-preview10 and drip 0.1.7. Hmm...
I am still seeing a new JVM being started every drip run. I am
testing Drip 0.1.7 with Lein 2 by running lein test 5 times in a row
with LEIN_JAVA_CMD=drip in ~/.lein/leinrc, OS X, JDK 7.
No multiple JVM started for me (at least in my trivial tests)
drip 0.1.7
Same versions here, but after running just "lein" thrice in a project, I
still have 3 JVMs in "drip ps". It's the same when I run another lein
command, e.g., "lein jar" or "lein test".
Bye,
Tassilo
--
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to ***@googlegroups.com
Note that posts from new members are moderated - please be patient with your first post.
To unsubscribe from this group, send email to
clojure+***@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
Jack Moffitt
2013-01-23 18:53:36 UTC
Permalink
There was a bug that prevented drip from working with preview10.
That's been fixed. Then for a while the drip JAR was distributed as
compiled by Java 7, which failed silently when run on older JVMs.
That's also been fixed now.

I've been using it successfully for the last few days now.

So if you get Lein 2.0.0 and grab the latest drip it should just work.
You can also try running it from a checkout, which also is very easy
and works (and it worked even when the Java 7 compiled ones were in
the distributed version).

jack.
Post by Chris Altman
I'm getting the same behavior. Has there been any action on this?
I'm getting the same multiple JVM starting behavior on Arch Linux using
lein 2.0.0-preview10 and drip 0.1.7. Hmm...
I am still seeing a new JVM being started every drip run. I am
testing Drip 0.1.7 with Lein 2 by running lein test 5 times in a row
with LEIN_JAVA_CMD=drip in ~/.lein/leinrc, OS X, JDK 7.
No multiple JVM started for me (at least in my trivial tests)
drip 0.1.7
Same versions here, but after running just "lein" thrice in a project, I
still have 3 JVMs in "drip ps". It's the same when I run another lein
command, e.g., "lein jar" or "lein test".
Bye,
Tassilo
--
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
Note that posts from new members are moderated - please be patient with your first post.
To unsubscribe from this group, send email to
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to ***@googlegroups.com
Note that posts from new members are moderated - please be patient with your first post.
To unsubscribe from this group, send email to
clojure+***@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
Omer Iqbal
2013-01-24 06:12:26 UTC
Permalink
I tried the same on a ubuntu setup. Same issue as the rest I believe. :(
time drip -cp ~/.m2/repository/org/clojure/clojure/1.4.0/clojure-1.4.0.jar
clojure.main -e "(reduce + (range 100))"
4950

real 0m1.065s
user 0m1.420s
sys 0m0.068s

time java -cp ~/.m2/repository/org/clojure/clojure/1.4.0/clojure-1.4.0.jar
clojure.main -e "(reduce + (range 100))"
d4950

real 0m1.063s
user 0m1.400s
sys 0m0.160s
./repository/org/clojure/clojure/1.4.0/clojure-1.4.0.jar clojure.main -e
"(reduce + (range 100))"
4950
real 0m0.123s
user 0m0.032s
sys 0m0.016s
./repository/org/clojure/clojure/1.4.0/clojure-1.4.0.jar clojure.main -e
"(reduce + (range 100))"
4950
real 0m0.632s
user 0m0.828s
sys 0m0.080s
That's very very cool !
I did just that, but I don't get any speedup with leiningen. All I can
see is that after every leiningen command, "drip ps" shows one process
This is also happening for me. Is there some way to configure drip to
ignore certain arguments?
I added a way to specify options to ignore, which fixes the problem of
it launching multiple JVMs. Unfortunately, lein never works after the
first invocation; I'm guessing it's not happy about the trampoline
file disappearing and not coming back after the first invocation.
https://gist.github.com/3719891
Any ideas?
jack.
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
Note that posts from new members are moderated - please be patient with
your first post.
To unsubscribe from this group, send email to
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
--
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to ***@googlegroups.com
Note that posts from new members are moderated - please be patient with your first post.
To unsubscribe from this group, send email to
clojure+***@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
Tassilo Horn
2013-01-24 07:34:57 UTC
Permalink
Omer Iqbal <***@gmail.com> writes:

Hi Omer,
Post by Omer Iqbal
I tried the same on a ubuntu setup. Same issue as the rest I believe. :(
time drip -cp ~/.m2/repository/org/clojure/clojure/1.4.0/clojure-1.4.0.jar
clojure.main -e "(reduce + (range 100))"
4950
real 0m1.065s
user 0m1.420s
sys 0m0.068s
Keep in mind that only subsequent invocations will be faster. On my
system using drip 0.1.9 I get these times:

1. 2.20s user 0.09s system 96% cpu 2.374 total
2. 0.03s user 0.03s system 25% cpu 0.222 total
3. 0.03s user 0.02s system 20% cpu 0.261 total
4. 0.03s user 0.02s system 23% cpu 0.225 total

With drip 0.1.9 and leiningen 2.0.0, now the leiningen integration also
seems to work properly:

--8<---------------cut here---------------start------------->8---
[***@thinkpad][0][:-)][10181](git)-[master]
[~/Repos/clj-test] % time lein version
Leiningen 2.0.0 on Java 1.7.0_09 OpenJDK 64-Bit Server VM
lein version 3.31s user 0.17s system 95% cpu 3.631 total
[***@thinkpad][0][:-)][10182](git)-[master]
[~/Repos/clj-test] % time lein version
Leiningen 2.0.0 on Java 1.7.0_09 OpenJDK 64-Bit Server VM
lein version 0.05s user 0.06s system 8% cpu 1.298 total
[***@thinkpad][0][:-)][10182](git)-[master]
[~/Repos/clj-test] % time lein version
Leiningen 2.0.0 on Java 1.7.0_09 OpenJDK 64-Bit Server VM
lein version 0.04s user 0.03s system 5% cpu 1.370 total
[***@thinkpad][0][:-)][10182](git)-[master]
[~/Repos/clj-test] % time lein version
Leiningen 2.0.0 on Java 1.7.0_09 OpenJDK 64-Bit Server VM
lein version 0.04s user 0.02s system 4% cpu 1.281 total
--8<---------------cut here---------------end--------------->8---

And "drip ps" only shows 1 jvm process. Before, I had one process per
lein invocation.

Great!

Bye,
Tassilo
--
--
You received this message because you are subscribed to the Google
Groups "Clojure" group.
To post to this group, send email to ***@googlegroups.com
Note that posts from new members are moderated - please be patient with your first post.
To unsubscribe from this group, send email to
clojure+***@googlegroups.com
For more options, visit this group at
http://groups.google.com/group/clojure?hl=en
Loading...