0:00 / 0:00
Clojure is Not Afraid of the GPU - Dragan Djuric
ClojureTV
111K subscribers • 135 videos on Hallway
- Recommended by 2 people: 1 on Hacker News and 1 in engineering communities.
- Presented by Dragan Djuric
Intermediate. Assumes working knowledge.
6.8K views9 years ago2 recommendations
Programming languagesSystems programmingLisp and ClojureGPUs, shaders and CUDAPerformance and optimization
Dragan Djuric presents Clojure libraries like Neanderthal and ClojureCL that enable high-performance GPU computing and linear algebra.
Today's hot topics, data science and machine learning, offer many algorithms that can turn lifeless data into useful information. Based on math-heavy theory, relying on number crunching, often billions and billions of raw operations must be performed quickly. Clojure can be teamed up with hardware accelerators or GPUs to offer both a cozy dynamic REPL environment and the speed and power of low-level hardware optimizations for numerical computations. In this talk, I present a few libraries tailored by the Clojure's measure, that can help achieve state-of-the-art performance: ClojureCL to direct the GPU, Neanderthal to help with vectorization and linear algebra, and Bayadera's incredibly fast MCMC engine. Clojure may not be able to compete with R and Python in the off-the-shelf machine learning, but for high-performance customized algorithms - it can be THE secret sauce.Why it's here
2 people recommend thisWhat people say. Recommended as a great demonstration of interactive GPU programming and high-performance numerical computing in Clojure.
skardanon Hacker News • Recommends
On “Uncomplicate: Number crunching in Clojure”
ClojureCUDA, ClojureCL (as in OpenCL) and Neanderthal are libraries developed by Dragan Djuric. Watch his talk from EuroClojure 2016 in Bratislava: link to this video
tmpLispon Hacker News • Mentions
On “The Idea of Lisp”
Data crunching on GPUs is a LISP strength. It runs code orders of magnitude faster than say python or c++. link to this video
thebeardedoneon Hacker News • Mentions
On “Interactive GPU Programming, Part 2: Hello OpenCL”
ClojureCL looks quite awesome, it looks like it takes all of the boiler plate out in comparison to C but I am very interested in the overhead. I tried aparapi for my bachelor thesis and for larger problems it seemed to have quite the overhead that the normal kernel did not have (several years ago). After watching your talk on youtube 1, I saw you compared the GPU implementation to the JVM and other CPU implementations in Clojure. Do you have any numbers for the same kernel being called from a native C openCL application? 1 link to this video