|Vincent||New & Cool|
|14:25:00 - 15:15:00||Intermediate||English|
Using OpenCL and CUDA computations can be sped up 2 to 10 times, but these languages are quite low-level. Various solutions have been brought to program GPUs and CPU SSE/AVX in a high level languages. In Java this is being developed in the Sumatra Project, which is based on Aparapi - a project originated at AMD. In this session I want to introduce both Aparapi and Project Sumatra to you, and show how you can create Java-software that does heavy computations a lot faster.
We start with going through the basics of GPU-programming and modern computer architectures, to give you an idea of what silently changed since 2006. Both theory and examples are discussed to give you the knowledge to start programming GPUs in Java tomorrow. We close with an automated demo, which shows (off) the speed-advantages of GPU-computing.
You'll receive code that compares various ways of parallel programming in Java, including Aparapi. We can try it out and discuss code-optimisations, so bring your laptop!
Bio van Vincent Hindriksen
Founder of StreamComputing in 2010, one of the few better known companies around that's specialised in performance engineering and GPU-computing - proudly a Dutch company. He has a track-record of speeding-up software up to 350 times, while not even using GPUs. His specialism is algorithm-redesign for parallel execution.
He always bringing in some humour, when speaking in front of a group, which is badly needed as the explained theories will remind you of the long lectures at university.