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 LibreOffice 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 be 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 LibreOffice 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 5:00am on the dates listed in the table below. (The intent is that you finish it up at your leisure the night before, rather than waiting till the last second and submitting it at 4:59am...)
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 20th, 2015 | Jan 24th, 2015 by 5am | Rubric | 50 | 60 |
2 | Version Control | Jan 22nd, 2015 | Jan 26th, 2015 by 5am | Rubric | 15 | 45 |
3 | C Programming (Language, Tools, and Makefiles) |
Jan 27th, 2015 | Feb 2nd, 2015 by 5am | Rubric | - | 70 |
4 | C Programming Project | Feb 3rd, 2015 | Feb 16th, 2015 by 5am | Rubric | - | 150 |
5 | Performance Measurement | Feb 12th, 2015 | Feb 23rd, 2015 by 5am | Rubric | - | 130 |
6 | Performance Optimization (Compilers and programmer techniques) |
Feb 19th, 2015 | Mar 2nd, 2015 by 5am | Rubric | - | 150 |
7 | Performance Optimization (Memory Hierarchy) |
Feb 26th, 2015 | Mar 16th, 2015 by 5am | Rubric | - | 150 |
8 | Network Socket Programming (Basic) |
Mar 19th, 2015 | Mar 30th, 2015 by 5am | Rubric | - | 120 |
9 | Network Socket Programming (Intermediate) |
Mar 26th, 2015 | Apr 6th, 2015 by 5am | Rubric | - | 120 |
10 | MIPS Assembly Programming (Basic) |
Apr 7th, 2015 | Apr 15th, 2015 by 5am | Rubric | - | 125 |
11 | MIPS Assembly Programming (Intermediate) |
Apr 14th, 2015 | Apr 22nd, 2015 by 5am | Rubric | - | 135 |
12 | MIPS Assembly Programming (Advanced) |
Apr 21st, 2015 | Apr 29th, 2015 by 5am | Rubric | - | 135 |