SMRF

SMRF (Stolaf Map-Reduce Framework, pronounced 'Smurf') is a project inspired by the high overhead of Hadoop and the implications it has on teaching map-reduce in the classroom. SMRF is designed to manage map-reduce jobs on a single machine, and is specifically designed for high-power machines such as the St. Olaf 32-core "things". This framework works almost entirely from main memory, and fully exploits multi-threaded systems. SMRF is also designed to be configurable so that users can tune their jobs for optimal performance.

Contribute
The SMRF project is currently maintained on the St. Olaf CS Subversion Server. Currently, it is closed unless permission to read/write is requested. Its subversion command is:

If the project is successful enough, it may be moved to Sourceforge and opened to community development.

Status
SMRF is now a working C++ API and features a command-line application called SMRF* that is designed in the same way as Hadoop Streaming. Example usage of both can be found in the subversion repository under the examples directory. SMRF is also undergoing testing, and is about to undergo a relatively large overhaul (though its functionality will not change).

Example Program: Wordcount
The following source code is a wordcount application written using SMRF:

The following is a Makefile for the wordcount example: