You are here

Peachy Assignments

This page has the resources for Peachy Parallel Assignments, assignments shared so that others can adopt them while teaching topics in parallel and distributed computing. They are a submission category at the EduPar and EduHPC conferences and are peer reviewed to ensure they meet the following criteria:

  • Tested: All Peachy Parallel Assignments have been successfully used with real students.
  • Adoptable: Peachy Parallel Assignments are easy to adopt. This includes not only the provided materials, but also the content being covered. Ideally, the assignments cover widely-taught concepts using common parallel languages and widely-available hardware, have few prerequisites, and (with variations) are appropriate for different levels of students.
  • Cool and inspirational: Peachy Assignments are fun and inspiring for students. They encourage students to spend time with the relevant concepts. Ideal Peachy Assignments are those that students want to demonstrate to their roommate.

Peachy assignments are intended to be the analog of Nifty assignments for parallel and distributed computing.


Try out these assignments using the materials below. Then remember to share your own awesome assignments by submitting them to the next conference with a Peachy contest!

EduPar 2024

EduHPC 2023

  • "Using MPI For Distributed Hyper-Parameter Optimization And Uncertainty Evaluation" by Erik Pautsch, John Li, Silvio Rizzi, George K. Thiruvathukal, and Maria Pantoja (paper on figshare)
  • "1D Heat Equation in Chapel" by Jeremiah Corrado and Daniel Fedorin (paper on figshare)
  • "k-Nearest Neighbor with Map Reduce MPI" by Erik Saule (paper on figshare)
  • "Parallelizing a 1-Dim Nagel-Schreckenberg Traffic Model" by Ramses van Zon and Marcelo Ponce (paper on arxiv)
  • "Program Your Favorite Data Science Pipeline in Spark" by H. Martin Bücker, Marieke Plesske, Johannes Schoder, Wolf Weber (paper on figshare)
  • "K-means clustering: An assignment for OpenMP, MPI, and CUDA/OpenCL" by Diego García-Alvarez and Arturo Gonzalez-Escribano (paper on figshare)

EduPar 2023

EduHPC 2022

  • Simulation and Rendering of Colliding Spheres” by Isabel Rosa, Charlotte Park, Alexandros-Stavros Iliopoulos, Tao B. Schardl, and Charles E. Leiserson (link)
  • Hill Climbing with Monte Carlo: An Assignment for OpenMP, MPI, and CUDA/OpenCL, Arturo Gonzalez-Escribano, Yuri Torres, and Rocío Carratalá-Sáez (link)

EduPar 2022

  • Paper summarizing all assignments
  • Performance and Carbon Footprint of Distributed Workflow Executions by Luyen, Casanova, Ferrera Da Silca (link)
  • Warming Stripes: A Cool Start to Big Data Processing by Bücker, Schoder (link)  
  • Abelian Sandpile Simulation by Lasserre, Namyst Wacrenier (pdf, zip)

EduHPC 2021

EduHPC 2020

EduHPC 2019

EduPar 2019

EduHPC 2018

EduPar 2018

  • Using the Monte Carlo Pattern to Simulate a Forest Fire by Joel C. Adams (writeup, materials for assignment)
  • Fire Simulator and Fractals: using a visualization library to introduce CUDA by Tia Newhall and Andrew Danner (writeup, materials for assignment (external link))
  • Peachy Unplugged Parallels by David W. Brown (writeup)
  • Reproducibility in Parallel Computing using Floating-Point Arithmetic by Ganesh Gopalakrishnan (writeup)
  • Data Races are Pure Evil: A Simple Java-based Illustration by Ganesh Gopalakrishnan (writeup)
  • Parallel Programming Performance Hinges on Memory Access Efficiency by Ganesh Gopalakrishnan (writeup)