Cheetah: Boosting Scientific Computing with Heterogeneous Processors

Cheetah: Boosting Scientific Computing with Heterogeneous Processors
Repository URL:

Commodity hardware nowadays includes not only many-core CPUs but also Graphics Processing Units (GPUs), whose data-parallel computational capabilities have been growing at an exponential rate. This computational power can be used for purposes other than graphics-oriented applications, such as processor-intensive algorithms like those found in the scientific computing setting. Cheetah is a framework that distributes computationally intensive programs over a networked set of CPUs and GPUs, allowing to use these resources in a Single System Image-like approach. A software developer using Cheetah only needs to specify a set of processor-independent OpenCL kernels to enable her program to use all of the available processing units. This program may then scale up as more powerful and diverse computing resources become available with no need for further customization or recompilation. Our experimentation has shown that the system, even in the presence of limited computing resources, can in some cases enable speedups of up to two orders of magnitude with reduced application development efforts.


Middleware; Heterogeneous Computing; Scientific Computing; GPGPU; OpenCL; Job Scheduling

Project Info

Coordinated by: CITI
Project Type: Basic research or R&D projects
Total Funding Amount: Not funded

Start Date: 2009-10-01
End Date: ?


João Lourenço (Principal Investigator)
Luís Oliveira (MSc Student)

Recent Releases

Release Package Date
0.1 Download (333.73 KB) Release info Dec 30 2011