An OpenCL Framework for Heterogeneous Clusters

Extending OpenCL
to Clusters

SnuCL naturally extends the original OpenCL semantics to the heterogeneous cluster environment. OpenCL applications written for a single heterogeneous system with multiple OpenCL compute devices can run on the cluster without any modifications.

Integrating OpenCL
Vendor Platforms

SnuCL integrates multiple OpenCL platforms from different vendor implementations into a single platform. It enables OpenCL applications to share objects (buffers, events, etc.) between different compute devices such as AMD GPUs, NVIDIA GPUs, and Intel Xeon Phi coprocessors.

Multicore CPUs as a
Compute Device

A set of CPU cores becomes a powerful OpenCL compute device. SnuCL distributes kernel work-groups to the CPU cores and executes them in parallel. It adopts the work-item coalescing technique to execute multiple kernel instances efficiently.

Try SnuCL now!