Graduate Catalog 2020-2021

CSC 770 Parallel Computing

3 hours; 3 credits. In this course students will learn about the foundations of parallel computing. The emphasis will be on algorithms that can be used on shared- and distributed-memory systems. The course will include both a theoretical component and a programming component. The topics covered will encompass on fundamentals of parallel computing, parallel computer architectures, performance, communication, decomposition techniques for parallel algorithms, parallel programming models such as Open MP and MPI models, analytical modeling of parallel programs, algorithms and languages. Appropriate examples of existing or proposed parallel architectures will be surveyed as well as recent advances in parallel algorithms for scientific computing. Specific parallel algorithms for solving scientific problems and their implementation on parallel machines related to numerical analysis, scientific applications, runtime environments, performance analysis will be discussed. To enroll in this course, students must have knowledge in organization and processing of various types of information structures, storage allocation, sorting, and searching techniques. Prerequisites: Permission of the Graduate Coordinator