You are here: Home / Past Courses / Spring 2013 - ECPE 170 / 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.


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.


To account for the varying amount of work required, each lab is worth a different point amount, as listed in the table below.


Lab #TopicLab Start DateLab Report Due DatePoints Per ProblemPre-Lab PointsLab 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