Skip to Main Content

CSC4005 Parallel Programming: Home

Course Description

This course introduces concepts of parallel programming. Topics include parallel computer architectures, parallel programming languages, data structure designs for efficient parallel processing, synchronization controls, and applying parallel programming to high performance computing and AI/Machine Learning.

Recommended Books

Parallel Programming

This accessible text covers the techniques of parallel programming in a practical manner that enables readers to write and evaluate their parallel programs. Supported by the National Science Foundation and exhaustively class-tested, it is the first text of its kind that does not require access to a special multiprocessor system, concentrating instead on parallel programs that can be executed on networked computers using freely available parallel software tools. The book covers the timely topic of cluster programming, interesting to many programmers due to the recent availability of low-cost computers. Uses MPI pseudocodes to describe algorithms and allows different programming tools to be implemented, and provides readers with thorough coverage of shared memory programming, including Pthreads and OpenMP. Useful as a professional reference for programmers and system administrators.

Recommended Databases

Librarian