CS 450: Project 4B: MapReduce


For this project, you will implement a MapReduce framework using threads. This time you won't be given a pre-existing testing framework. Instead, you'll have to test correctness on your own. You can see the project description from the Github classroom link. Clone from there as well.

The project is to be done on the Fusion cluster, to which you should already be able to log in (again, see Piazza). Please let us know if you still cannot get in.


This project can be done in teams (of no more than two)! You'll want to reflect this in your github classroom setup and in your info.txt for the project. Note that while you can collaborate/share code within a team, sharing code between teams is of course considered cheating. Don't do it!

Getting the Starter Code

As before, you should go to the Github classroom link posted in Piazza. You should accept the invitation and then go to the link it gives you, and follow the same clone procedure as you did in the previous projects to get the starter code.

Due Dates and Logistics

This project is due Wednesday, May 1, 2019 at 11:59PM. Late submissions will be penalized as per the syllabus.

Handing In

IMPORANT:Before you hand in, make sure to add (and commit) a file named "info.txt" which contains your full name and e-mail address (for all team members). If I cannot associate your Github account with you, you cannot expect your code to be graded! No exceptions to this rule will be made.

As you go, you should be making commits using git to your local repository (again, if you've not used git, you should go to the link above). When you're ready to hand in your code, you can just run:

[you@machine] make handin
If you have modified files you haven't commited, the handin script will warn you. This handin script actually just invokes git push.

Remember that you will be docked points for late work as per the syllabus.


If you have questions, please first post them on Piazza so others can get the benefit of the instructor/TA's answer. Avoid posting code that will give away your solution or allow others to cheat. If this does not resolve your issue, contact the instructor or TA, or come to office hours.