Labs
This course is organized around 12 in-class labs on varying topics.
Lab Reports:
Each lab requires you to write a lab report that answers key questions as you work through the lab. These reports should follow the format of the OpenOffice template provided here. Answers to most lab questions can be short; a few sentences is generally sufficient.
The first lab (and only the first lab!) will be submitted via the Sakai site. For all other labs, everything (programs source code, lab reports, etc...) must checked into the corresponding lab directory in version control and pushed to the online repository.
Lab Reports must be submitted in PDF format, not as OpenOffice files (Choose File->Export as PDF). Documents not in PDF format will be returned ungraded.
Deadlines:
Pre-Lab checkpoints are due at the beginning of class of the corresponding lab. A "checkpoint" is simply a quick verification that the requested activity was complete. Detailed grading will be done when the full lab report is submitted.
The full Lab Report is due by 11:59:59pm on the dates listed in the table below.
Grading:
To account for the varying amount of work required, each lab is worth a different point amount, as listed in the table below.
Lab # | Topic | Lab Start Date | Lab Report Due Date | Points Per Problem | Pre-Lab Points | Lab Points |
---|---|---|---|---|---|---|
1 | Linux Basics | Jan 11th, 2013 | Jan 18th, 2013 | Rubric | 50 | 75 |
2 | Version Control | Jan 16th, 2013 | Jan 23rd, 2013 | Rubric | 20 | 50 |
3 | C Programming (Language, Tools, and Makefiles) |
Jan 25th, 2013 | Feb 4th, 2013 | Rubric | - | 75 |
4 | C Programming Project | Jan 30th, 2013 | Feb 11th, 2013 | Rubric | - | 150 |
5 | Performance Measurement | Feb 4th, 2013 | Feb 18th, 2013 | Rubric | - | 175 |
6 | Performance Optimization (Compilers and programmer techniques) |
Feb 11th, 2013 | Feb 26th, 2013 | Rubric | - | 150 |
7 | Performance Optimization Project | Feb 20th, 2013 | Mar 10th, 2013 | Rubric | - | 150 |
8 | Performance Optimization (Memory Hierarchy) |
Feb 27th, 2013 | Mar 17th, 2013 | Rubric | - | 175 |
9 | Endianness | Mar 18th, 2013 | Mar 24th, 2013 | Rubric | - | 150 |
10 | MIPS Assembly Programming (Basic) | Mar 27th, 2013 | Apr 3rd, 2013 | Rubric | - | 150 |
11 | MIPS Assembly Programming (Advanced) | Apr 4th, 2013 | Apr 14th, 2013 | Rubric | - | 175 |
12 | Network Socket Programming with Python | Apr 15th, 2013 | Apr 24th, 2013 | Rubric | - | 125 |