Multiprocessor Programming, Adam Morrison and Moshe Sulamy

Workshop on Multicore Algorithms

This is a workshop focusing on multicore algorithms for concurrent data structures. Our goal will be to understand the intricacies of concurrent data structure design on multicore machines,
and to get a feel of what makes some concurrent structures faster than others.
There will be 3 meetings at the start of the semester, on Wed. 14:00-16:00. Further meetings will be scheduled based on progress.

Students will work in pairs. Each pair will be assigned one class of data structure, taken from the book "The Art of Multiprocessor Programming" and from articles in the literature.
The goal of each pair's project will be to create working quality versions of various concurrent implementations of the data structure class.

The Project

  • Each team will be a assigned a specific data structure.
  • Start from existing code, libraries, and articles in the literature.
  • Create Java and C versions for each structure.
  • Conduct benchmarking of the various implementations.
  • Write a short summary of the benefits and drawbacks of each implementation.

List of Projects