Major Clojure 1.10 performance degredation on JDK11

Elana Hashman ehashman at debian.org
Wed Feb 6 04:54:52 GMT 2019


Hi Alex (+cc team),

I'm working on upgrading Clojure 1.9 in Debian to Clojure 1.10.

I noticed when running my very brief autopkgtest suite that the tests
were unusually slow. Sure enough, I seem to have hit some sort of
startup time degradation. Here's some tests run with various JDKs:

elana at debian:/debian$ time /usr/lib/jvm/java-8-openjdk-amd64/bin/java -cp /usr/share/java/clojure-1.10.jar clojure.main -e '"hi"'
"hi"

real	0m5.032s
user	0m18.415s
sys 	0m0.529s
elana at debian:/debian$ time /usr/lib/jvm/java-9-openjdk-amd64/bin/java -cp /usr/share/java/clojure-1.10.jar clojure.main -e '"hi"'
"hi"

real	0m6.674s
user	0m22.503s
sys 	0m0.631s
elana at debian:/debian$ time /usr/lib/jvm/java-10-openjdk-amd64/bin/java -cp /usr/share/java/clojure-1.10.jar clojure.main -e '"hi"'
"hi"

real	0m6.231s
user	0m20.863s
sys 	0m0.604s
elana at debian:/debian$ time /usr/lib/jvm/java-11-openjdk-amd64/bin/java -cp /usr/share/java/clojure-1.10.jar clojure.main -e '"hi"'
"hi"

real	0m13.794s
user	0m34.169s
sys 	0m0.695s

It's also substantially slower than 1.8 and 1.9 on JDK11:

elana at debian:/debian$ time clojure1.9 -e '"hi"'  # alias for the command line above
"hi"

real	0m9.996s
user	0m23.960s
sys 	0m0.577s
elana at debian:/debian$ time clojure1.8 -e '"hi"'
"hi"

real	0m9.941s
user	0m24.713s
sys 	0m0.618s

Debian Buster isn't going to ship with JDK8, unfortunately, so I'm
hoping we can figure out the source of the issue in order to get 1.10
into the release. I just discovered the performance regression on my
latest build so I haven't had much time to dig into root causes, but I
wondered if you were aware of any performance issues with Clojure 1.10
on JDK11.

Throwing some possible things out there: more weirdness from
reproducible builds (I don't think Clojure is reproducible yet anyways),
bytecode recompilation due to mismatch (would be weird, I'm building it
with JDK11), ...

I think it would also be good to check 1.8 and 1.9 on JDKs 8-10 to
compare results (but I haven't had the chance to do so).

Cheers,

- e
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 833 bytes
Desc: not available
URL: <http://alioth-lists.debian.net/pipermail/pkg-clojure-maintainers/attachments/20190205/d6710bd0/attachment.sig>


More information about the Pkg-clojure-maintainers mailing list