Goals
Lab 6: Shared Memory Computing Patterns
Choose an appropriate number of worker processors for your compute node & problem
Parallelize code using shared memory model & multiple threads, using tools such as:
Parallelize code using shared memory model & multiple processes, using tools such as:
DistributedArrays.jl w/ using map and mapreduce
FLoops.jl and
DistributedEx(recommended)
Readings / Discussions
Evaluating the suitability of a problem for different parallel architectures
Project
Lab
Lab 6: Parallel Programming I: Shared-memory Systems (due Oct 24)
Exercise 1: Parallelization for Multi-Core Workstations via Multiple-Threads
Exercise 2: Parallelization for Multi-Core Workstations via Multiple Processes (static html version)
Readings
Introduction to Parallel Computing Sec B-E -or-
Introduction to High-Performance Computing Ch 2.1-2.4: Parallel Computing (19pg) -or-
Introduction to High Performance Computing for Scientists and Engineers:
Ch 4 Parallel Computers (20pg) -and-
Ch 5 Basics of Parallelization (22pg)
Additional Resources
Week 8 Class Discussion: Parallelization and Scaling Laws