National Workshop on Teaching an Undergraduate Parallel Programming Course with Pattern Programming Monday July 13th, 2015 Southeastern Universities Research Association |
|
Barry
Wilkinson University of North Carolina Charlotte |
Clayton
Ferner University of North Carolina Wilmington |
Flyer/registration |
Agenda |
||
8:30 am | Arrival, Continental Breakfast | Materials |
9:00 am - 9:15 am |
Welcome and opening remarks, outline of workshop. Introduction to pattern programming as a design approach to parallel programming, workpool, pipeline, stencil, divide and conquer, and synchronous all-to-all patterns, advantages, disadvantages, our approach. |
Slides: Introduction to patterns Hands-on Notes (all sessions) |
9:15 am - 10:45 am | Session 1: Course development, MPI, and pattern programming tools a) Presenters (45 minutes):
b) Participants: Guided hands-on experience (45 minutes):
|
Slides: MPI Outline Suzaku Additional notes: |
10:45 am - 11:00 am | Break | |
11:00 am - 12:30 pm | Session 2: Pattern Programming - Higher-level patterns with Suzaku and the Seeds Framework a) Presenters: Development of higher level patterns and tools (60 minutes): (i) Suzaku workpool. Monte Carlo pi and matrix multiplication. (ii) Seeds pattern programming framework - Monte Carlo pi, matrix addition and multiplication. b) Participants: Guided hands-on experience (30 minutes). (i) Suzaku workpool - Monte Carlo pi, matrix multiplication and N-body programs. (ii) Seeds pattern programming using Eclipse (Java), workpool pattern - Monte Carlo pi, matrix addition/multiplication. |
Slides: Suzaku Workpool Seeds Framework Hands-on Notes Additional notes:Suzaku workpool Suzaku generalized patterns Seeds network version |
12:30 pm - 1:30 pm |
Lunch |
|
1:30 pm - 3:00 pm |
Session 3: The Paraguin compiler approach a) Presenters: Paraguin compiler pattern programming framework, matrix addition/multiplication, heat distribution using stencil pattern. b) Participants: Guided hands-on experience, compiler submission page, programs, hello world, matrix addition, matrix multiplication, heat distribution (stencil pattern). |
Slides: Paraguin Compiler Hands-on Notes |
3:00 pm - 3:15 pm | Break | |
3:15 pm - 4:45 pm | Session 4: Discussion - Integrating patterns into parallel programming classes and lower level CS courses a) Presenters: Brief presentation on course deveopment at UNC-C and UNC-W and our experences (20 minutes). Regular courses, NCREN video conferencing courses, on-line courses. Top-down verse bottom up. Use of VM, cluster. Future use of pattern-based parallel programming. ACM/IEEE 2013 curriculum. b) All: Discussion on using the pattern programming approach to introduce parallel/distributed computing in the lower CS courses. Relationship with IEEE/CS curriculum. |
Course development at UNC-C/W |
4:45 pm - 5:00 pm |
Wrap up, follow-up support, future collaborations. |
Software |
||
|
Acknowledgements: This material is based upon work supported by the National Science Foundation under the collaborative grant #1141005/1141006, "Collaborative Research: Teaching Multicore and Many-Core Programming at a Higher Level of Abstraction." Any opinions, findings, and conclusions or recommendations expressed in this material are those of the authors and do not necessarily reflect the views of the National Science Foundation. |
June 29, 2015
|