You are here: Home / Past Courses / Fall 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 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 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.


    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 Sep 3rd, 2013 Sep 10th, 2013 Rubric 50 75
        2 Version Control Sep 5th, 2013 Sep 12th, 2013 Rubric 20 50
        3 C Programming 

        (Language, Tools, and Makefiles)
        Sep 12th, 2013 Sep 22nd, 2013 Rubric - 75
        4 C Programming Project Sep 17th, 2013 Sep 29th, 2013 Rubric - 150
        5 Performance Measurement Sep 24th, 2013 Oct 8th, 2013 Rubric - 175
        6 Performance Optimization
        (Compilers and programmer techniques)
        Oct 1st, 2013 Oct 15th, 2013 Rubric - 150
        7 Performance Optimization Project Oct 8th, 2013 Oct 22nd, 2013 Rubric - 150
        8 Performance Optimization
        (Memory Hierarchy)
        Oct 22nd, 2013 Nov 5th, 2013 Rubric - 175
        9 Endianness Oct 29th, 2013 Nov 12th, 2013 Rubric - 150
        10 MIPS Assembly Programming (Basic) Nov 7th, 2013 Nov 19th, 2013 Rubric - 150
        11 MIPS Assembly Programming (Advanced) Nov 14th, 2013 Dec 1st, 2013 Rubric - 175
        12 Network Socket Programming with Python Nov 21st, 2013 Dec 10th, 2013 Rubric - 125