Project 3 - If You Want To Sing Out, Sing Out

Topic Due 3/28 at 8:59pm Chicago time

Project Due 4/16 at 8:59pm Chicago time

The goal of this project is to make use of GPU programming techniques (GLSL, CUDA, OpenCL with a large GPU component, or graphical or computation) in a project of your choice, subject to andy's approval. Ideally you will use GPU programming techniques to help you with your own research.

Proposal phase - by 3/28 you should create a web page that describes the project that you want to do, along with any reference material that would help convince me that this is a good project. Tell me why GPU programming techniques will be beneficial here and what you expect to gain. You should then email the location of that web page to andy. I will then make links to all those projects available on the class webpages so everyone can see what everyone else is doing.

Once andy approves of your project you move onto the implementation phase. As part of this you should do a decent amount of benchmarking, not only in terms of GPU-enhanced vs traditional programming methods, but also different ways of optimizing the GPU code. 

As with the two previous projects, to turn in your project you should set up a web page describing your work, YouTube video, including the well-commented source code and required files to be able to compile and run your program, and some screendumps showing what your application should look like when its running. You should then email andy with the location of this website before the deadline. It  would probably be a good idea to put a backup copy of the web page at a second website just in case I can't get to the first one.

When you send andy the location of your webpage you should again email a screen snapshot of your head that is 320 pixels wide by 240 pixels tall in JPEG format named p3.<your_last_name>.jpg. This image will be used on the class web pages along with the link to your project web page.

As with the two previous projects, each student will also give a presentation about their project in-class and answer some questions about your work. You should prepare a good presentation - you can use your project website, or create some slides. You should definitely run your code and show your shaders to the class. You should definitely discuss optimization issues. Be sure to practice your presentation so you finish within the allotted time so everyone has equal time to present.

last revision 1/28/12