Computing curricula 1991: Report of the ACM/IEEE-CS Joint Curriculum Task Force
Computing curricula 1991: Report of the ACM/IEEE-CS Joint Curriculum Task Force
Experience with the language SR in an undergraduate operating systems course
SIGCSE '92 Proceedings of the twenty-third SIGCSE technical symposium on Computer science education
Introducing parallel computing into the undergraduate computer science curriculum: a progress report
SIGCSE '92 Proceedings of the twenty-third SIGCSE technical symposium on Computer science education
Parallel computing (2nd ed.): theory and practice
Parallel computing (2nd ed.): theory and practice
SIGCSE '94 Proceedings of the twenty-fifth SIGCSE symposium on Computer science education
Laboratories for Parallel Computing
Laboratories for Parallel Computing
Shaping the focus of the undergraduate curriculum
ACM SIGCSE Bulletin
The changing curriculum of computing and information technology in Australia
Proceedings of the 2nd Australasian conference on Computer science education
Teaching Parallel Programming Using Both High-Level and Low-Level Languages
ICCS '02 Proceedings of the International Conference on Computational Science-Part III
Local supercomputing training in the computational sciences using remote national centers
Future Generation Computer Systems - Special issue: Selected papers from the workshop on education in computational sciences held at the ICCS 2002
Network distributed computing using DCEZ
Journal of Computing Sciences in Colleges
An easy to use distributed computing framework
Proceedings of the 38th SIGCSE technical symposium on Computer science education
A short unit to introduce multi-threaded programming
Journal of Computing Sciences in Colleges
Utilization of map-reduce for parallelization of resource scheduling using MPI: PRS
Proceedings of the 2011 International Conference on Communication, Computing & Security
Modules in community: injecting more parallelism into computer science curricula
Proceedings of the 42nd ACM technical symposium on Computer science education
EcoSim: a language and experience teaching parallel programming in elementary school
Proceedings of the 43rd ACM technical symposium on Computer Science Education
Proceedings of the 43rd ACM technical symposium on Computer Science Education
Parallel programming: design of an overview class
Proceedings of the 2011 ACM SIGPLAN X10 Workshop
Proceeding of the 44th ACM technical symposium on Computer science education
Hi-index | 4.10 |
The author describes how parallel computing can be integrated into courses throughout the computer science undergraduate curriculum. First, he explains why parallel computing is important, observing that many large, computationally intensive problems are solved with parallel programs. He reasons that as the related areas of symmetric multiprocessing and distributed computing also become more important, practitioners will need to fully understand parallel computing. Next, he describes the current situation at most colleges and universities, noting that parallel computing is offered only as an upper-level elective. The author then describes how parallel computing can be integrated into each course. He begins with the introductory courses and continues with those on computer organization and computer architecture, operating systems, programming languages, theory of computation, standard algorithms, discrete event simulation, and numerical analysis. Finally, the author explains the requirements for successfully implementing this integrated approach.