Neanderthal and friends support CUDA 9, Java 9, and Clojure 1.9

January 17, 2018

Uncomplicate libraries have just got a nice update and are ready for the latest underlying platform releases: CUDA 9, Java 9, and Clojure 1.9.

Where to get it

CUDA

ClojureCUDA now supports the latest CUDA 9.1. That should eliminate the trouble of downgrading your CUDA installation to CUDA 8. If you install the latest CUDA toolkit, everything should work smoothly. If you have CUDA 9.0, it will work. I am not sure about CUDA 8 - even that should work, but I haven't bothered to try it, since by now CUDA 9 is what most people install by default.

Of course, CUDA 9 is also suported in Neanderthal.

Java 9

ClojureCUDA, ClojureCL, and Neanderthal use some JVM internals to manage memory efficiently, which can clash with Java 9 modules. Fortunately, this has a solution! Include "--add-opens=java.base/jdk.internal.ref=ALL-UNNAMED" in your JVM options if you use these libraries with Java 9, and everything will work smoothly, with no code changes required!

Clojure 1.9

Clojure cares a lot about backward compatibility, so this was not an issue. All Uncomplicate libraries work with Clojure 1.9 without change.

There will be even more

I have some tutorial articles on GPU programming with Clojure in my warehouse. Now that I don't have to explain the readers that they have to keep CUDA at the previous version, it seems to be a good moment to begin releasing them :)

Neanderthal and friends support CUDA 9, Java 9, and Clojure 1.9 - January 17, 2018 - Dragan Djuric