The course policy document is here. You are responsible for reading, understanding, and complying with it.
This isn't a real project, it is rather a procedure that you should use to check that all is well before attempting Project 1. You do not need to hand in anything for Project 0.
If you wish, instead of using Scc through the WWW interface, you can grab a copy for your own use. Be warned that Scc is still very frail C code, with plenty of bugs, and you should not blindly trust the code it generates. This is a gzip tar file containing a version that is appropriate for use on bronco (or most any unix system, with a few changes). Use tar -zxvf Scc563.tgz to extract the archive, cd Scc, and then make. A good test is Scc test.Sc, which should yield an a.out that, when run, simply prints a={5,6}
The first real project of our course uses SIMD multimedia instructions for the innovative purpose of increasing the apparent resolution of LCDs by using third-of-a-pixel rendering techniques. The complete description is thirdy.ps
The support code ppmio.c is also available now.
There is a nice little utility for enlarging subpixels called triple.c that you can use to see how your code works without having an LCD panel. It takes a (subpixel rendered RGB) PPM file and creates a file that represents each pixel by a 3x3 array of pixels containing the usual LCD-like red, green, and blue 1x3 vertical stripes. Displaying an image converted in this way at 1:1 size on a conventional monitor, you will see the desired effect if you step back from the monitor a bit. Note that images appear darker when displayed this way because 2/3 of the display color output is turned off.
Submissions should be sent via email to ee563@ecn.purdue.edu with a subject line containing the character 1. Submit early, submit often... only the last one counts. Each submission should be a "bag" containing the Makefile, source files, and HTML documentation (implementor's notes). The C source code for bag is available here.
This project has you sorting lines using shared memory multiprocessing. The complete description is psort.ps
This family of projects involves modifying a sequential genetic programming system to work on a variety of parallel architectures.
The sequential source code is
gen.c,
gen.h, and
tree.c.
Simply compile these together by:
cc gen.c tree.c -o gen -O2
Some notes about this project...
This year is the second time that Programming Parallel Machines (EE563) is using, and requiring students to use, HTML.
A good introduction to using HTML is http://www.ncsa.uiuc.edu/demoweb/html-primer.html.
Various other goodies that might be of interest: