Hi all!

My name is Ilmir Usmanov and I'm a student of Moscow Institute of Physics and 
Technology.
Also I'm implementing OpenACC 1.0 in gomp4 branch as an employee of Samsung R&D 
Institute Russia (SRR). My research interests are connected with creating 
OpenCL Code Generator. So I'd like to participate GSoC 2014 with project called 
"OpenCL Code Generator" as an independent student. I will do the project during 
my free time, my employer will not pay for this.

The proposal is the following.

* Implementation of OpenCL Code Generator.
** Abstract.
The project addresses generation of OpenCL kernels as OpenMP 4.0 target. 
Currently OpenMP 4.0 target implementation supports only host device as a 
target. I’m going to implement OpenCL kernels generator and extend libgomp with 
OpenCL routines.
During the project I'm going to reuse current (not finished) implementation of 
OpenCL generator from openacc-1_0-branch, refactor and implement it as OpenMP 
4.0 target plugin.

** Plan.
The project will consist of the following parts.

*** Kernels generator.
In this part I’m going to implement OpenCL C or OpenCL SPIR generator from 
GIMPLE representation as OpenMP 4.0 target plugin.

*** Libgomp extensions.
In this part I’m going to extend libgomp with OpenMP 4.0 plugin that allocates 
the memory at target device, maps the memory etc. Also I'm going to extend 
current implementation of OpenMP 4.0 target plugin API with routines to perform 
kernel compilation and enqueuing, if necessary.

** Schedule.
21 March - 18 May
Preparation:communicate with mentor, read libgomp source code, try submit some 
small patches to extend plugin API. Refactor code generator from 
openacc-1_0-branch.

19 May - 8 June
Coding to implement OpenCL runtime library: map clause, target update.

9 June - 22 June
Coding to implement kernels generator. Generate simple kernels: target.

23 June - 13 July
Generate complicated kernels: declare target.

14 July - 11 August
Detailed testing.

Is the proposal suitable?

-- 
Ilmir. 

Reply via email to