You are here: Home / ECPE 170 / Labs


This course is organized around 11 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.

All labs will be submitted via the Canvas site. For each lab, everything (programs source code, lab reports, etc...) must be compressed in ZIP format and submitted through Canvas.

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


      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 25th, 2022 Jan 31st, 2022 by 5am Rubric 50 60
        2 C Programming 

        (Language, Tools, and Makefiles)
        Feb 1st, 2022 Feb 7th, 2022 by 5am Rubric - 70
        3 C Programming Project Feb 8th, 2022 Feb 14th, 2022 by 5am Rubric - 150
        4 Performance Measurement Feb 15th, 2022
        Feb 28th, 2022 by 5am Rubric - 140
        5 Performance Optimization
        (Compilers and programmer techniques)
        Feb 22nd, 2022 Mar 7th, 2022 by 5am Rubric - 160
        6 Performance Optimization
        (Memory Hierarchy)
        Mar 1st, 2022

        Mar 14th, 2022 by 5am

        Rubric - 160
        7 Network Socket Programming
        Mar 10th, 2022

        Apr 4th, 2022 by 5am

        Rubric - 120
        8 Network Socket Programming
        Mar 22nd, 2022

        Apr 11th, 2022 by 5am

        Rubric - 120
        9 MIPS Assembly Programming
        Mar 31st, 2022 Apr 18th, 2022 by 5pm
        Rubric - 125
        10 MIPS Assembly Programming
        Apr 7th, 2022 Apr 25th, 2022 by 5am Rubric - 135
        11  MIPS Assembly Programming
         Apr 12th, 2021 May 2nd, 2022 by 5am  Rubric -  135