SIGCSE 2017 Workshop 402:
Teaching Parallel Computing with OpenMP on the Raspberry Pi
Saturday 3/11/17, 3:00-6:00pm, Room 616-617
Instructors: Suzanne Matthews (USMA West Point), Joel Adams (Calvin College), Dick Brown (St. Olaf College), and Libby Shoop (Macalester College)
Abstract: Parallel computing is one of the new knowledge units in the ACM/IEEE CS 2013 curriculum recommendations. This workshop will present the Raspberry Pi as an inexpensive hardware platform for providing each student with her own parallel processor. The tactile and visceral benefits of each student having her own machine and being able to take full advantage of its multicore capabilities are significant. In this hands-on workshop, we show how parallelism can be used to spread the workload of compute-intensive applications across the multiple cores of a Raspberry Pi, and explore its use as an inexpensive hardware platform for teaching parallel computing. CS educators who are interested in learning about parallel computing, OpenMP, and how to teach these concepts on a Raspberry Pi are encouraged to attend. Attendees will enjoy a hands-on hardware/software experience, exploring how parallel computations operate and work in practice. In Part I of the workshop, attendees will explore a Raspberry Pi multi-core computer individually, and use the parallel capabilities of the Raspberry Pi to explore parallel computation through the use of OpenMP "patternlets" published on CSinParallel.org site. Applications to topics including drug design will be included. Part II explores additional approaches for using Raspberry Pis to teach computer science at undergraduate institutions, from introductory courses to undergraduate research, and reviews assessment of such efforts. All materials from this workshop will be freely available from CSinParallel.org site. Part 1: Sample Workshop
Part 1: Sample Workshop
3:00pm (100 min)
- Initial survey; Introduction to Raspberry Pi - 3:00 [Suzanne]
- Introductory slides (Acrobat (PDF) 1.1MB Mar2 17)
Introductory slides (PowerPoint 2007 (.pptx) 2.7MB Mar11 17)
- Introductory slides (Acrobat (PDF) 1.1MB Mar2 17)
- Raspberry Pi Basics, with Patterns - 3:15 [Libby]
- Handout (Acrobat (PDF) 223kB Mar2 17)
- Race condition worksheet (Acrobat (PDF) 438kB Mar2 17)
- Integration Exemplar - 3:55 [Joel]
- Integration slides (Acrobat (PDF) 5.2MB Mar2 17)
Integration slides (PowerPoint 2007 (.pptx) 8MB Mar11 17) - Numerical integration with 1 thread (Quicktime Video 1.3MB Mar11 17)
Numerical integration with 4 threads (Quicktime Video 771kB Mar11 17)
- Integration slides (Acrobat (PDF) 5.2MB Mar2 17)
- Drug Design Exemplar - 4:10 [Dick]
- Drug design slides (Acrobat (PDF) 2.8MB Mar2 17)
Drug design slides (PowerPoint 2007 (.pptx) 2.1MB Mar11 17) - Drug design worksheet (Acrobat (PDF) 696kB Mar2 17)
- Drug design slides (Acrobat (PDF) 2.8MB Mar2 17)
- Wrap-up survey - 4:35 [Dick]
Break
4:35pm (15 min)
Part 2: Teaching experiences
Assessment results - Prior Workshops
4:50pm (10 min) [Joel]
- Raspberry Pi/Pimoroni assessment (Acrobat (PDF) 1.2MB Mar11 17)
Raspberry Pi/Pimoroni assessment (PowerPoint 2007 (.pptx) 445kB Mar11 17)
Connecting to Raspberry Pis from the Laptop
5:00pm (20 min) [Dick]
- Raspberry Pi 3 laptop connection (Acrobat (PDF) 6.7MB Mar11 17)
Raspberry Pi 3 laptop connection (PowerPoint 2007 (.pptx) 5.9MB Mar11 17) - Raspberry Pi 3 laptop connection - instructions (Acrobat (PDF) 1.7MB Jan24 19)
Using Raspberry Pi throughout a first-year course
5:20pm (10 min) [Libby]
- First-year Raspberry Pi course (Acrobat (PDF) 1.2MB Mar11 17)
- First-year Raspberry Pi Course (Google slides)
Undergraduate Research
5:30pm (10 min) [Suzanne]
- Research experiences (Acrobat (PDF) 834kB Mar11 17)
- Research experiences (PowerPoint 2007 (.pptx) 1.2MB Mar11 17)
Discussion
5:40pm (15 min) [Joel]
Feedback
5:55pm (5 min) [Joel]
Additional links:
- Pimoroni Raspberry Pi 3 image, used in Part 1 of this workshop (1.3 GB, 7zip format)
- Download, uncompress with 7zip, and flash onto an 8GB micro USB card
- Laptop Raspberry Pi 3 image, used in Part 2 of this workshop (Windows or Mac) (2.5 GB, zip format)
- Download, uncompress with unzip or 7zip (Mac), and flash onto an 8GB micro USB card
- CSinParallel.org site
- Source of additional materials for teaching/learning parallel and distributed computing.