You are here: Home / Past Courses / Fall 2012 - ECPE 170 / Labs


This course will be organized around 10 in-class labs on varying topics.  Many labs also have "pre-lab" assignments (i.e. homework) and/or "post-lab" assignments (i.e. homework or projects).

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, with separate sections for pre-lab, lab, and post-lab questions. Answers to most lab questions can be short; a few sentences is generally sufficient.

Lab Submission:

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).


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 (which includes sub-sections for the Pre-Lab, Lab, and the Post-Lab as necessary) is due by 11:59:59pm on the dates listed in the table below.


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


Lab #TopicLab DateLab Report Due DateGrading RubricPre-Lab PointsLab PointsPost-Lab Points
1 Linux Basics Tue, Sept 4th Tue, Sept 11th PDF 50 50 50
2 Version Control Thur, Sept 6th Thur, Sept 13th PDF 20 50 0
3 C Programming Thur, Sept 13th Sun, Sept 23rd PDF 0 100 150
4 Performance Measurement Thur, Sept 20th Sun, Sept 30th PDF 50 100 50
5 Performance Optimization
(Compilers and programmer techniques)
Thur, Sept 27th Fri, Oct 12th PDF 20 125 125
6 Performance Optimization
(Memory Hierarchy)
Tue, Oct 9th Sun, Oct 28th PDF 0 120 80
7 Endianness Postponed
30 75 75
8 MIPS Assembly Programming (Basic) Tue, Oct 30th Tue, Nov 6th PDF 0 150 0
9 MIPS Assembly Programming (Advanced) Tue, Nov 6th Tue, Nov 20th PDF 0 200 0
10 Network Socket Programming with Python Tue, Nov 27th Fri, Dec 7th PDF 0 125 0