skip to main content
10.1145/2538862.2538875acmconferencesArticle/Chapter ViewAbstractPublication PagessigcseConference Proceedingsconference-collections
panel

Teaching parallel design patterns to undergraduates in computer science

Published:05 March 2014Publication History

ABSTRACT

The industry shift to emerging forms of parallel and distributed computing (PDC), including multi-core CPUs, cloud computing, and general-purpose use of GPUs, have naturally led to increased presence of PDC elements undergraduate Computer Science curriculum recommendations, such as the new and substantial "PD" knowledge area in the ACM/IEEE CS2013 recommendations. How can undergraduate students grasp the extensive and complex range of PDC principles and practices, and apply that knowledge in problem solving, while PDC technologies continue to evolve rapidly? Parallel design patterns occur at all computational levels, ranging from low-level concurrent execution patterns (such as message passing or thread pool patterns) to high-level software design patterns suitable for organizing entire systems or their components (such as model-view-control or pipe and filter patterns). The ubiquity of these patterns in all forms of parallel and distributed computation makes parallel patterns relevant and illuminating at all undergraduate levels, and knowledge of those patterns can guide effective problem solving for parallel programs. This panel presents four viewpoints representing various approaches for teaching parallel patterns to CS undergraduates at various academic levels, including short "patternlets" examples, patterns in domain applications and parallel problem solving, and two tools, Seeds and Paraguin, for teaching parallel design patterns to undergraduates.

References

  1. ACM/IEEE-CS Joint Task Force, "Computer Science Curricula 2013." {Online}. {Accessed: 07-Sep-2013}: http://ai.stanford.edu/users/sahami/CS2013/.Google ScholarGoogle Scholar
  2. R. Brown and E. Shoop, "Modules in community: injecting more parallelism into computer science curricula," in Proceedings of the 42nd ACM technical symposium on Computer science education, New York, NY, USA, 2011, pp. 447--452. Google ScholarGoogle ScholarDigital LibraryDigital Library
  3. B. Wilkinson, J. Villalobos, and C. Ferner, "Pattern programming approach for teaching parallel and distributed computing," in Proceeding of the 44th ACM technical symposium on Computer science education, New York, NY, USA, 2013, pp. 409--414. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Teaching parallel design patterns to undergraduates in computer science

            Recommendations

            Comments

            Login options

            Check if you have access through your login credentials or your institution to get full access on this article.

            Sign in
            • Published in

              cover image ACM Conferences
              SIGCSE '14: Proceedings of the 45th ACM technical symposium on Computer science education
              March 2014
              800 pages
              ISBN:9781450326056
              DOI:10.1145/2538862

              Copyright © 2014 Owner/Author

              Permission to make digital or hard copies of part or all of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for third-party components of this work must be honored. For all other uses, contact the Owner/Author.

              Publisher

              Association for Computing Machinery

              New York, NY, United States

              Publication History

              • Published: 5 March 2014

              Check for updates

              Qualifiers

              • panel

              Acceptance Rates

              SIGCSE '14 Paper Acceptance Rate108of274submissions,39%Overall Acceptance Rate1,595of4,542submissions,35%

              Upcoming Conference

              SIGCSE Virtual 2024
              SIGCSE Virtual 2024: ACM Virtual Global Computing Education Conference
              November 30 - December 1, 2024
              Virtual Event , USA

            PDF Format

            View or Download as a PDF file.

            PDF

            eReader

            View online with eReader.

            eReader