Software Prerequisites and Optional Recommendations

If you wish to set up the necessary ssh client on your laptop before we get started on Tuesday, check our requirements and recommendations. There will also be time to take care of this with our guidance during the workshop itself.

Our sessions and most special meals will take place in the Elva Jones Computer Science Building (abbreviated EJB); several meals will be served at Thompson/Kennedy building.

Monday, June 17

See the logistics page for travel and arrival information.

7:00 - 9:00 Informal Reception/Meet and Greet (location: EJB 3200)

Tuesday, June 18

8:00-9:00 Community breakfast and introductions

Location: EJCS 3200

Who are you? What is your institution like? How much parallelism is in your curriculum? What are the key things you want your students to be able to do?

9:10 - 12:00 Morning session: OpenMP on Raspberry Pi (Location: EJB 3105)

9:10 - 9:25 Welcome; Introduction to CSinParallel (Joel)

9:25 - 10:00 Introduction to Raspberry Pi; Setting up the Pi (Dick)

10:00 - 10:30 Hands-on: OpenMP Patternlets on the Raspberry Pi (Joel)

10:30 -10:45 Break

10:45 - 11:15 Integration Exemplar (Libby)

11:15 - 12:00 Hands-on: Drug Design Exemplar (Dick)

12:00 - 1:00 Lunch (location: Thompson/Red Room)

1:15 - 5:00 Afternoon Session (Location: EJB 3105)

1:15 - 2:45 Hands-on: OpenMP on a Remote Multiprocessor (Libby)

Scalability pptx presentation: Scalability.pptx (PowerPoint 2007 (.pptx) 206kB Jun18 19)
Scalability pdf presentation: Scalability.pdf (Acrobat (PDF) 1.5MB Jun18 19)

For hands on, start here: Connecting to a virtual machine in Google Cloud

After this, you can try this sample activity demonstrating scalability. that we have used with students in a systems course.

2:45 - 3:30 Seeing and Hearing Multithreading with TSGL (Joel)

3:30 - 3:45 Break

3:45 - 5:00 Scaling Further: Shared Memory to Distributed Memory (Joel)

Powerpoint version of talk: 02.PDC-Landscape.pptx (PowerPoint 2007 (.pptx) 32.5MB Jun17 19)
PDF version: 02.PDC-Landscape.pdf (Acrobat (PDF) 47.1MB Jun17 19)

Dinner (location: Thompson/Kennedy)

Later in the evening: Optional "wind-down" session at a local establishment. Location: Corks, Caps, and Taps, 626 W 4th St., Winston-Salem, NC 27101.

Wednesday, June 19

8:30 - 9:00 Breakfast (location: Hawthorne)

9:30 - 12:30 Morning session (Location: EJB 3105)

9:30 - 10:00 Hands-on: Building Raspberry Pi Clusters)

10:00 - 10:45 Hands-on: MPI patternlets on the Raspberry Pi (Libby)

Document Describing activities you can explore

10:45 - 11:00 Break

11:00 - 12:30 Hands-on: MPI Exemplars on the Raspberry Pi (Libby)

Document Describing activities you can explore

12:30 - 1:30 Lunch (Location: Thompson/Red Room)

1:45 - 5:00 Afternoon session (Location: EJCS 3105)

1:45 - 3:15 MPI on Remote Clusters (Libby)

Start here for login information and code exploration: access cloud cluster and try MPI examples

3:20 - 3:30 Intro: Hybrid programmingL combining MPI and OpenMP

3:30 - 3:45 Break

3:45 - 4:30 Hands-on: Hybrid MPI/OpenMP programming (Libby)

Try combining MPI and openMP: hybrid parallel and distributed computing examples

Resources from workshop activities:

All of the code examples: CSinParallel.tar.gz

Github repo containing scripts for creating the multicore VM in Google cloud:

Github repo containing scripts for creating the cluster of VMs in Google cloud:

Version from 2017: How to build a Raspberry Pi 4-node cluster (stay tuned for an update to be announced on the Google group for the workshop)

Textbook that is good for learning OpenMP and MPI: An introduction to parallel programming by Peter Pacheco and its link.

iPDC parallel modules, including unplugged examples (from a group at Tennessee Tech)

4:30 - 5:15 Group Discussion

ppt of Joel's presentation: 08.PDC-in-CS-at-Calvin.pptx (PowerPoint 2007 (.pptx) 132kB Jun19 19)
pdf of Joel's presentation: 08.PDC-in-CS-at-Calvin.pdf (Acrobat (PDF) 304kB Jun19 19)

6:30 Community Dinner

Location: Milner's American Southern Restaurant
630 S. Stratford Rd
Winston Salem, NC 27103

Thursday, June 20

8:30 - 9:00 Breakfast (location: Hawthorne)

9:30 - 11:45 Morning session (Location: EJB 3105)

9:30 - 10:30 Workshop Break-out Sessions: Teaching PDC (Dick)

10:30 - 10:45 Break

10:45 - 11:45 Assessment activity

11:45 - 12:30 Lunch (location: EJB 3200; optionally to-go)