May 12 & 13 saw the annual gathering of the OpenCL™ community at the @Bristol Interactive Science Centre. IWOCL – not to be confused with EWOKL, a presumably fictional gathering celebrating lesser-known Star Wars characters – saw 115 OpenCL parallel programming experts sharing their latest research and developments. Over the event’s two days there was a wide variety of presentations, from academic research deep-dives to high-level commercial overviews.
115 delegates from 14 countries in the @Bristol conference venue
OpenCL has broad appeal and is seeing expanding use, from super-computer to mobile, serving a wide spectrum of use-cases from academic research through to hard-nosed commercial applications. Getting to grips with the flexible technology that makes all this possible is a fascinating and complex subject. Ultimately it’s about how you split an algorithm into (typically) a very large number of chunks and spread them across multiple processors for execution in parallel. OpenCL’s flexibility allows all sorts of different processors to be targeted, but a common use-case leverages the parallel processing power of the GPU. Of course the primary aim of all this endeavor has been to get things to run faster. With mobile – though performance is still important – there’s another benefit: power efficiency. As the demands on mobile devices increase this is becoming more and more important and the conference reflected this with a variety of mobile-related presentations. There are also numerous projects creating compilers for new and existing languages to compile down to OpenCL code – over 70 at the last count.
Plenty of interest in the live OpenCL and RenderScript demos on the ARM stand
We were delighted to be invited to present a workshop in one of the parallel tracks over the afternoon of the first day. (Parallel tracks at an OpenCL conference just seems right somehow). Johan Gronqvist and I gave an overview of the ARM® Mali™-T600 and Mali-T700 range of mobile GPUs, highlighting some of the features of the architecture and consequences for developers when optimising for Mali GPUs. This included some deep dive case studies for both a Laplace filter and an implementation of SGEMM covering matrix multiplication. As you might expect, there was plenty of experience in the audience and it led to some interesting and insightful questions. It was great to see the level of interest in compute on mobile, both during our talk and whilst meeting delegates throughout the conference.
Elsewhere the recent work of Khronos – keeper of the OpenCL standard amongst others – was on display, including SPIR (Standard Portable Intermediate Representation) which will avoid having to ship OpenCL source code with applications and allow a target format for compilers of other programming languages that would benefit from an OpenCL back-end. Also on show was SYCL, an abstraction layer for leveraging C++ and OpenCL and a keynote from Neil Trevett, chairman of the Khronos OpenCL group, about the past, present and future for the API.
Neil Trevett, Chairman of the Khronos OpenCL group
Adobe’s Eric Berdahl gave an entertaining perspective of how a commercial developer determines when to concentrate efforts on incorporating OpenCL to accelerate large media applications, and some of the pitfalls and advantages of doing so. And there were several other talks from a wide-ranging selection of the OpenCL community along with a healthy selection of posters, including one on using OpenCL with Python from our very own Anton Lokhmotov,who was also on the IWOCL program committee.
All in all, a fascinating event and we’re very grateful to the organisers for the opportunity to represent ARM. It was a lot of fun… roll on IWOCL 2015!
For more information:
IWOCL: http://iwocl.org/
SPIR: http://www.khronos.org/spir