Design patterns: an essential component of CS curricula
SIGCSE '98 Proceedings of the twenty-ninth SIGCSE technical symposium on Computer science education
Towards a top-down approach to teaching an undergraduate grid computing course
Proceedings of the 39th SIGCSE technical symposium on Computer science education
Patterns for parallel programming
Patterns for parallel programming
Running parallel applications on a heterogeneous environment with accessible development practices and automatic scalability
Structured Parallel Programming: Patterns for Efficient Computation
Structured Parallel Programming: Patterns for Efficient Computation
Teaching parallel design patterns to undergraduates in computer science
Proceedings of the 45th ACM technical symposium on Computer science education
Hi-index | 0.00 |
In this paper, we describe an approach for teaching parallel and distributed computing at the undergraduate level using computational patterns. The goal is to promote higher-level structured design for parallel programming and make parallel programming easier and more scalable. A pattern programming framework has been developed to create a distributed application that avoids the need to write code in low level message--passing APIs such as MPI. Several patterns have been implemented including workpool, pipeline, synchronous and iterative all-to-all, and stencil. We have redesigned a regular senior undergraduate parallel programming course to begin with a pattern strategy using our framework and provide a detailed syllabus around patterns.