In this chapter, we will unlock the parallel processing capacity of Graphics Processing Unit (GPU) from R, giving us access to, potentially, gigaflops and teraflops of performance for certain types of vector calculations. To do this, we need to roll up our sleeves, get technical, and step well beyond our comfort zone in R.
In this chapter, we will encounter new concepts, frameworks, and languages, including:
OpenCL
ROpenCL
– The R package that provides an interface abstraction for OpenCLSingle Instruction Multiple Data (SIMD) vector parallelism
Writing code in C (C99) for execution directly from within R
Developing an ROpenCL implementation of the distance measured as typically used in clustering algorithms
It's time to don your lab coat and your tin foil hat…