Using the Parallella with ‘R’ and OpenCL

By June 17, 2013 Parallella Blog 2 Comments

‘R’ is a powerful and flexible programming and scripting language that was created in the early nineties about the same time as its commercial brother the ‘S’ language. The purpose was to build a language that would help statisticians do their job. In the mid nineties it became an open source project, and has since then attracted the attention of and benefited from many talented individuals who have extended ‘R’ with thousands of add-on packages, for every scientific discipline imaginable.

As a result R has one of the most diverse and free package repositories of mathematical and quantitative intelligence that I know.

What does that have to do with the Parallella board and the Epiphany chip?

Well, R runs in an interpreter, which makes it the perfect choice for fast prototyping and on-the-fly programming. All of its numerical routines are highly optimized and make it extremely fast when compared to other interpreted or byte-compiled languages. But obviously, nothing is ever fast enough, which is why people have extended R so that it can fully utilize the parallel computing capacities of multicore processors and GPUs to make it even faster.

Since OpenCL is the standard for parallel programming of GPUs, any new device that is capable of executing OpenCL code can be used to enhance the computational power of the R interpreter significantly. The Parallella board with the Epiphany16/64 chip is one such device and I am currently working on doing just that.

It would be ideal to have R leverage the processing power of the Epiphany chip, without the R user having to worry about parallelizing their sequential algorithms. One first step to achieve this is to create a BLAS (Basic Linear Algebra Subprograms) library for R that is specifically designed to work with the Epiphany chips and use their parallelism.

I am convinced that the R user community would see this as a very attractive addition to the pool of devices available for accelerating general purpose ‘R’ computations at minimal cost.

Anyone with an interest to support this initiative is welcome to join the forum discussions. See the  R forum for more info on this topic.

Soren a.k.a. censix


Leave a Reply