Presentation is loading. Please wait.

Presentation is loading. Please wait.

Spreading Curricular Change in PDC: Some Practical Tools This material is based on work supported by the National Science Foundation under Grant Nos. DUE-1226172/1225739/1225796.

Similar presentations


Presentation on theme: "Spreading Curricular Change in PDC: Some Practical Tools This material is based on work supported by the National Science Foundation under Grant Nos. DUE-1226172/1225739/1225796."— Presentation transcript:

1 Spreading Curricular Change in PDC: Some Practical Tools This material is based on work supported by the National Science Foundation under Grant Nos. DUE-1226172/1225739/1225796. 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. Even programs of modest means can address many of the PDC curricular recommendations in TCPP and CS2013 at all curricular levels through an incremental, modular approach, given support from TCPP and strategies such as CSinParallel modules. Although TCPP recommendations refer only to PDC topics and CS2013 spans all undergraduate CS content areas, numerous affirming and intriguing interconnections relate the two recommendations. NSF-TCPP Curriculum Initiative on Parallel and Distributed Computing (TCPP Recommendations) The NSF-TCPP Curriculum Initiative has led not only in providing curriculum recommendations for PDC topics in undergraduate CS majors, with an emphasis on teaching PDC topics in four “core” courses (CS1, CS2, Algorithms/Data Structures, and Architecture), but also in gathering and supporting professors who put these recommendations into practice, through the Early Adopter program. The left side grid below indicates how CSinParallel materials and St. Olaf College’s curriculum relate to the TCPP recommendations for teaching PDC. ACM-IEEE/CS Joint Curricular Recommendations in Computer Science (CS2013) The two professional societies have jointly issued curricular recommendations for undergraduate CS majors approximately every 10 years since 1991. The current recommendations, known as CS2013, feature a sudden and substantial increase in PDC topics in response to factors such as the emergence of multicore processors and the rise of cloud computing. As the spreadsheet below indicates, PDC appears not only in new PD and SF knowledge areas, but also in many other knowledge areas throughout the curriculum. The right side grid below indicates how CSinParallel materials and St. Olaf College’s curriculum relate to the presence of PDC in CS2013. CSinParallel The CSinParallel project calls for teaching PDC concepts should be taught early and often throughout the computer science curriculum, using effective active-learning pedagogy. In order to accomplish this, we produce flexible teaching modules on topics ranging across the spectrum of parallel computing principles and practices, each designed for use in a variety course and institutional contexts. Each module contains: learning objectives comments on contexts for its use expository text student exercises, and assessment tools We seek to make it as convenient as possible for an instructor to insert a day or two on parallel computing in a course, even when that instructor may not have taught parallelism in that course in the past. Students who see PDC topics in many courses perceive the ubiquity of PDC throughout CS, and experience many aspects of this broad and rich subject area. St. Olaf College St. Olaf is a liberal-arts college in Northfield, Minnesota that recently (2002) expanded to a major program. Still small (17 majors this year, only three full-time faculty), we have nevertheless offered short PDC topics in almost every course from CS1 to the Senior Capstone Seminar in recent years. Examples include: Hadoop computing using the simplified WebMapReduce interface in every section of CS1 since 2010; programming with multiple cores (with race conditions) in Hardware Design, (a “computer organization course”) since 2010; and formal methods of distributed computing using the Pi Calculus in Theory of Computation (since 2011). CS2013 recommendationsTCPP recommendations CSinParallel Module Key CDSConcurrent Access to Data Structures (2 versions) DCDistributed Computing Fundamentals DDExemplar: Drug Design GPUGPU Programming HeteroHeterogeneous Computing IntroParallel Computing Concepts MR Map-reduce Computing for Introductory Students using WebMapReduce MR2An Advanced Introduction to Map-reduce using WebMapReduce PatPatternlets in Parallel Programming PiAExemplar: Computing Pi using Numerical Integration PiCPi Calculus: A Theory of Message Passing PL Concurrency and Map-Reduce Strategies in Various Programming Languages PMCProgramming with Multiple Cores (3 versions) PSParallel Sorting Elementary courses PL CS 276, Programming Languages CS1 CS 121, Principles of Computer ScienceMCA CS 284, Mobile Computing Applications HD CS 241, Hardware DesignTOP CS 300, Topics in Computer Science SD CS 251, Software Design and Implementation PDC CS 300, Topics: Parallel and Distributed Computing Intermediate and Advanced coursesTC CS 333, Theory of Computation ADS CS 253, Algorithms and Data StructuresATP CS 350, Advanced Team Project ESD CS 263, Ethical Issues in Software DesignHPCC IS 201, Power Computing in All Disciplines OS CS 273, Operating Systems Macalester College – St. Paul, MN Libby Shoop Saint Olaf College – Northfield, MN Dick Brown Calvin College – Grand Rapids, MI Joel Adams St. Olaf College CS Course Key Some observations Note: In the mapping at center between TCPP and CS2013, we assert that many different aspects of PDC shed light on “Why and what is parallel/distributed computing”


Download ppt "Spreading Curricular Change in PDC: Some Practical Tools This material is based on work supported by the National Science Foundation under Grant Nos. DUE-1226172/1225739/1225796."

Similar presentations


Ads by Google