GSoC Project(s) ideas

classic Classic list List threaded Threaded
4 messages Options
Reply | Threaded
Open this post in threaded view
|

GSoC Project(s) ideas

Simone Pellegrini
Hello,
I am interested in participating to this year's GSoC. My idea is to  
bring proof of concept prototypes which I have implemented over time  
in Clang to the main code base. I would like to propose a couple of  
projects, but before I wanted to hear from the community if there is a  
real interest or not.

1) Advanced Clang pragma handling: I would like to propose an  
extension to the current handling of pragmas which will (hopefully)  
make life much easier for people who wants to define new pragmas.  
Basically the system I am thinking of provides an easy way for the  
user to specify new type of pragmas (basically stealing some of the  
ideas of the Spirit Boost parser) and the machinery to automatically  
attach pragmas to statements. Once the system is integrated, the idea  
is to realize OpenMP frontend which is yet not available in Clang.

2) Polyhedral model extraction: the idea is simple if you are familiar  
with the polyhedral model to describe loops in a program. This is  
actually something that already exists in LLVM (Polly) but extracting  
these kind of information from the C/C++ code would make possible to  
have dependency analysis at the source code level (which is nice for  
auto-parallelization). Also here I have a working prototype which  
needs some work to be done to make it stable.

I would like to know if this would be interesting before actually  
writing the proposal for GSoC.

cheers, Simone

----------------------------------------------------------------
This message was sent using HORDE - IMP at DPS.

_______________________________________________
cfe-dev mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev
Reply | Threaded
Open this post in threaded view
|

Re: GSoC Project(s) ideas

Tobias Grosser
On 04/02/2011 11:54 AM, Simone Pellegrini wrote:
> Hello,
> I am interested in participating to this year's GSoC. My idea is to
> bring proof of concept prototypes which I have implemented over time
> in Clang to the main code base. I would like to propose a couple of
> projects, but before I wanted to hear from the community if there is a
> real interest or not.

Hi Simone,

both projects look nice. Some comments from my side.

> 1) Advanced Clang pragma handling: I would like to propose an
> extension to the current handling of pragmas which will (hopefully)
> make life much easier for people who wants to define new pragmas.
> Basically the system I am thinking of provides an easy way for the
> user to specify new type of pragmas (basically stealing some of the
> ideas of the Spirit Boost parser) and the machinery to automatically
> attach pragmas to statements. Once the system is integrated, the idea
> is to realize OpenMP frontend which is yet not available in Clang.

I like the idea of adding OpenMP support to clang and I got already
several people asking me about this. Unfortunately I cannot mentor you,
due to my limited clang experience. Maybe some of the clang developers
can take care of this.
In terms of the OpenMP backend support,
Patrick CARRIBAULT <[hidden email]> (CCed) may be a good
person to talk to. He has developed mpc[1], a nice new OpenMP library,
which you may use and might be able to support you with the LLVM backend
support.

> 2) Polyhedral model extraction: the idea is simple if you are familiar
> with the polyhedral model to describe loops in a program. This is
> actually something that already exists in LLVM (Polly) but extracting
> these kind of information from the C/C++ code would make possible to
> have dependency analysis at the source code level (which is nice for
> auto-parallelization). Also here I have a working prototype which
> needs some work to be done to make it stable.

This is an interesting idea which would be great for the polyhedral
community and it may result in the development of some nice
optimizations. I can probably mentor you on the polyhedral side and the
general LLVM side, but it would be necessary to at least have a
co-mentor who knows the clang internals. Furthermore, we should make
sure there is general interested from the LLVM community. I personally
believe it would be great, as it will attract many people concerned
about HPC, but people may think differently.

Cheers
Tobi
_______________________________________________
cfe-dev mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev
Reply | Threaded
Open this post in threaded view
|

Re: GSoC Project(s) ideas

Simone Pellegrini
In reply to this post by Simone Pellegrini
On 04/02/2011 05:54 PM, Simone Pellegrini wrote:

> Hello,
> I am interested in participating to this year's GSoC. My idea is to
> bring proof of concept prototypes which I have implemented over time
> in Clang to the main code base. I would like to propose a couple of
> projects, but before I wanted to hear from the community if there is a
> real interest or not.
>
> 1) Advanced Clang pragma handling: I would like to propose an
> extension to the current handling of pragmas which will (hopefully)
> make life much easier for people who wants to define new pragmas.
> Basically the system I am thinking of provides an easy way for the
> user to specify new type of pragmas (basically stealing some of the
> ideas of the Spirit Boost parser) and the machinery to automatically
> attach pragmas to statements. Once the system is integrated, the idea
> is to realize OpenMP frontend which is yet not available in Clang.
>
> 2) Polyhedral model extraction: the idea is simple if you are familiar
> with the polyhedral model to describe loops in a program. This is
> actually something that already exists in LLVM (Polly) but extracting
> these kind of information from the C/C++ code would make possible to
> have dependency analysis at the source code level (which is nice for
> auto-parallelization). Also here I have a working prototype which
> needs some work to be done to make it stable.
>
> I would like to know if this would be interesting before actually
> writing the proposal for GSoC.
>
Ok,
it looks there is not that much interest about these two ideas.
I guess everyone is fine the way Clang handle pragmas then! :)

In my opinion there are a number of limitations but I cannot find
any mentor I think it's worthless presenting the project for GSoC
because it will be 99% rejected.

cheers, Simone

> cheers, Simone
>
> ----------------------------------------------------------------
> This message was sent using HORDE - IMP at DPS.
>
> _______________________________________________
> cfe-dev mailing list
> [hidden email]
> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev

_______________________________________________
cfe-dev mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev
Reply | Threaded
Open this post in threaded view
|

Re: GSoC Project(s) ideas

Douglas Gregor
In reply to this post by Simone Pellegrini

On Apr 2, 2011, at 8:54 AM, Simone Pellegrini wrote:

> Hello,
> I am interested in participating to this year's GSoC. My idea is to  
> bring proof of concept prototypes which I have implemented over time  
> in Clang to the main code base. I would like to propose a couple of  
> projects, but before I wanted to hear from the community if there is a  
> real interest or not.
>
> 1) Advanced Clang pragma handling: I would like to propose an  
> extension to the current handling of pragmas which will (hopefully)  
> make life much easier for people who wants to define new pragmas.  
> Basically the system I am thinking of provides an easy way for the  
> user to specify new type of pragmas (basically stealing some of the  
> ideas of the Spirit Boost parser) and the machinery to automatically  
> attach pragmas to statements. Once the system is integrated, the idea  
> is to realize OpenMP frontend which is yet not available in Clang.

I think this would make an interesting proposal, especially since people often want to add new #pragmas to Clang and introduce them into the AST.

OpenMP would be a good test of advanced Clang pragma handling. If you're going to propose OpenMP, be sure to specify the intended limitations---e.g., you might want to tackle semantic analysis and AST representation but not actually try to generate IR for any particular OpenMP runtime.

> 2) Polyhedral model extraction: the idea is simple if you are familiar  
> with the polyhedral model to describe loops in a program. This is  
> actually something that already exists in LLVM (Polly) but extracting  
> these kind of information from the C/C++ code would make possible to  
> have dependency analysis at the source code level (which is nice for  
> auto-parallelization). Also here I have a working prototype which  
> needs some work to be done to make it stable.


I, personally, am not terribly interested in this project.

        - Doug
_______________________________________________
cfe-dev mailing list
[hidden email]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-dev