PD_ParallelDecomposition PD_ParallelPerformance TCPP_Programming CS0 CS1 CS2 DSA visual

iPDC Modules

CS2013 Knowledge Unit Coverage

Parallel Decomposition (Core Tier 1, Core Tier 2)

1. Core Tier 1: Explain why synchronization is necessary in a specific parallel program. [Usage]

2. Core Tier 1: Identify opportunities to partition a serial program into independent parallel modules. [Familiarity]

4. Core Tier 2: Parallelize an algorithm by applying task-based decomposition. [Usage]

Parallel Performance (Elective)

1. Detect and correct a load imbalance. [Usage]

3. Describe how data distribution/layout can affect an algorithm’s communication costs. [Familiarity]

TCPP Topics Coverage

Programming Topics


May be difficult for color-blind students, or students who are blind. We recommend using a range of treats that are differentiated by shape and color. Inexpensive bulk candies that achieve this include Runts, Nitwitz, and Rascals.


Yes. In (Ghafoor2019), the candy sorting exercise was used to introduce parallel programming concepts in CS1 and CS2. The evaluation performed by the authors suggest that the use of unplugged activities make it easier to learn parallel computing concepts.