This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: [GSoC 2014] Proposal: OpenCL Code Generator


Hi Ilmir!

On Wed, 19 Mar 2014 19:02:11 +0400, Ilmir Usmanov <zfts@yandex.ru> wrote:
> 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.

How much time would you be able to allocate for working on the GSoC
project?  Per
<http://www.google-melange.com/gsoc/document/show/gsoc_program/google/gsoc2014/help_page#11._How_much_time_is_required_to>,
Âyou should expect your project to be your primary focus this summerÂ.


> 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.

Specifically an ÂOpenMP 4.0 target pluginÂ, or generally a libgomp
plugin, so this would benefit both OpenACC and OpenMP, I assume?

> ** 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?

Generally, such a project does appear suitable as a GSoC project, and you
should certainly file it on the GSoC site before the deadline on Friday,
so that it can be considered there.


GrÃÃe,
 Thomas

Attachment: pgpZEe1pVEd0e.pgp
Description: PGP signature


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]