Welcome to CSinParallel
The shift to parallel computing---including multi-core computer architectures, cloud distributed computing, and general-purpose GPU programming---leads to fundamental changes in the design of software and systems. As a result, computer science (CS) students now need to learn parallel computing techniques that allow software to take advantage of the shift toward parallelism. To this end, CSinParallel (supported by a grant from NSF-CCLI) provides a resource for CS educators to find, share, and discuss modular teaching materials and computational platform supports.
CSinParallel modules provide conceptual principles of parallelism and (where appropriate) hands-on practice with parallel computing, in self-contained 1- to 3-day units that can be inserted in various CS courses in multiple curricular contexts. These modules offer an incremental approach to getting CS undergraduates the exposure to parallelism they will need as they begin their careers.
What We Provide
Here, one can find information and materials for integrating parallel computing in their computer science courses, including:
- Modules: Teaching materials and exercises for educators to present concepts and applications of parallel computing to students. These modules are shared and discussed among a community of Computer Science educators. Browse through the module collection, or contribute one of your own.
- Parallel Platform Packages (PPPs): These provide the interface and library tools with which to implement modules. PPPs include libraries, which can be searched or contributed.
- Information about platform resources: Each PPP can be used with some physical or virtual parallel computing platform. We provide information about these possible platforms.
- Discussion Page: An avenue for discussing topics in teaching parallel computing.
We have released the WebMapReduce (WMR) software package on sourceforge, which provides a web interface to Hadoop map-reduce computing that is simple enough for CS1 students to use yet powerful enough for data-intensive computing projects. See WebMapReduce PPP page for teaching modules that use WMR.
This material is based on work supported by the National Science Foundation under Grant Nos. DUE-0941962 and 0942190. 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.