High level OpenCL implementation

Abstract

OpenCL has been developed for writing programs that run in parallel. While particularly engineered to take advantage of GPUs (graphics processing units) it still could potentially be used on other architectures such as the multi-core CPUs available in the latest generation of desktop PCs, or over networks of individual machines. While the standard is available at present, no implementation has yet been completed.
This project will investigate the implementation of OpenCL through the reuse of existing technologies. Rather than provide a dedicated OpenCL compiler producing architecture specific parallel code, this project will create a translator for OpenCL programs to existing parallel processing frameworks. This could be as simple as a threads implementation on a PC, or a GPGPU based version using platforms such as CUDA.

Participants

Proposals

[1] Project proposal, GIVE Group, School of Information Technology, Deakin University, Australia. [PDF] [Contact GIVE to discuss this project further] [Last updated: Wed, 4 Mar 2009 10:26:21 ]

[2] Project proposal, GIVE Group, School of Information Technology, Deakin University, Australia. [PDF] [Contact GIVE to discuss this project further] [Last updated: Mon, 9 Feb 2009 06:28:26 ]

Technical Reports

[1] Matthew Royle. High level OpenCL implementation for multi-core CPUs. Technical Report Honours Project Report, Virtual Reality Special Interest Group, Computer Science Department, Rhodes University, Grahamstown, South Africa, November 2009. [PDF] [BibTeX]

[2] Matthew Royle. Creating a high-level opencl compiler: A literature survey. Technical Report Literature Review, Virtual Reality Special Interest Group, Computer Science Department, Rhodes University, Grahamstown, South Africa, June 2009. [PDF] [BibTeX]

External links

High Level OpenCL Implementation

Images