Gregor

Author: Zhan Chen (zhanc1), Lehao Sun (lehaos)

Summary

We have implemented a parallel programming framework library for C (or C++). It would mimic the semantics of spawn and sync in Cilk, where the programmer simply identifies the independent parallel tasks and library would take care of the scheduling and work stealing

Deliverables

Checkpoint
Proposal
Final Report
Code Repo

Schedule

Time Plan Check
April 1-April 3 Literature review on work stealing and Cilk
April 4-April 10 A prototype library that allows spawning no-argument tasks and sync tasks
April 11-April 17 A prototype with spawn, sync semantics similar in Cilk and able to set return value asynchronously + first benchmark test
April 18-April 24 An implementation of work stealing protocol in a potentially non-scalable way + second benchmark test
April 25-May 1 Scale work stealing based on second benchmark test
May 2-May 9 Toward a self-implementated thread and lock