[Mesa-dev] Google Summer of Code ideas needed

Ian Romanick idr at freedesktop.org
Mon Mar 18 13:45:26 PDT 2013


On 03/13/2013 10:11 AM, Tom Stellard wrote:
> Hi,
>
> It's time again for Google Summer of Code, so we need to start updating
> the X.Org ideas page (http://www.x.org/wiki/SummerOfCodeIdeas) with new
> ideas.  Since there have been a few issues with the wikis lately, if you
> have any ideas please respond to this thread, and I will make sure they
> get onto the official ideas page (but still feel free to update the wiki
> page yourself if you can).  A good project description should contain:

I've been trying to update the wiki... I don't seem to have an account 
(seems unpossible), and the account creation page is broken.

https://bugs.freedesktop.org/show_bug.cgi?id=62383

In the mean time, I have a couple ideas that someone could add.

#1. Find common patterns in real GLSL shaders.

Difficulty: Medium
Skills Required: C, C++
Helpful, but optional skills: GLSL, compilers
Possible Mentor: IanRomanick (idr on IRC)
Where to ask questions: mesa-dev at lists.freedesktop.org, #dri-devel on 
irc.freedesktop.org
Descrition:

Using Mesa's stand-along GLSL compiler as a basis, generate a database 
of IR from a large number of existing shaders (e.g., from shaderdb). 
Write a piece of software that will mine this database for "large" 
patterns that commonly occur in shaders.  This information will be used 
by people working on the GLSL compiler to improve code generation for 
these sequences.

#2. Improved application of GLSL complier optimizations

Difficulty: Easy
Skills Required: C, C++
Helpful, but optional skills: GLSL, compilers
Possible Mentor: IanRomanick (idr on IRC)
Where to ask questions: mesa-dev at lists.freedesktop.org, #dri-devel on 
irc.freedesktop.org
Descrition:

Mesa's GLSL compiler contains a large number of optimization passes. 
Each pass may change the code of a shader, and this may result in 
opportunities for other passes to make more changes.  As a result, we 
run all of our optimization passes in a loop until the shader code 
stabilizes.  This is expensive, and, though we have never observed this 
in the wild, it is possible that a shader may never stabilize.

Find a static ordering, with possible repeats, of optimization passes 
that does not compromise the quality of the generated code.  Measure the 
before and after speed of compiling a large set of real-world shaders.

> - A brief description of the project
> - A difficulty rating (e.g. easy, medium, hard)
> - The skills / programming languages required
>
> Also, I am going to purge all the old ideas from the ideas page in the
> next week, so if there are any of the old ideas that you think are
> still relevant, let me know and I will keep it.
>
> The ideas page is used as one of the criteria by Google for selecting
> mentoring organizations and part of the reason X.Org was not selected
> last year was that the ideas page was not up to par, so if we want to
> participate in Google Summer of Code this year, it is important we
> have a good ideas page with lots of ideas.
>
> Thanks,
> Tom Stellard
> _______________________________________________
> mesa-dev mailing list
> mesa-dev at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/mesa-dev
>



More information about the mesa-dev mailing list