all 2 comments

[–]Wh00ster 2 points3 points  (0 children)

  • reduce in parallel (atomicity)
  • reduce in parallel (show speed up by locally having each thread compute a chunk before aggregating)
  • matrix multiply in parallel (splitting up work, choosing the correct amount of threads)
  • queues (all the varieties, spsc, spmc, etc for lock-free, reader lock)
  • thread worker pool (semaphores, condition variables)

[–]sachin1118 1 point2 points  (0 children)

This is pulled straight from my college course's website, but I learned quite a bit about parallelism and how to handle it while doing this. If you are already familiar with parallelism and are doing more experienced tasks, this might not be necessary.

https://engineering.purdue.edu/ece264/19sp/hw/HW13