Course Discription |
:
This course discusses the basics of parallel computing including: parallel architectures,
parallel programming techniques, parallel algorithm designs and parallel performance
analysis. Parallel architecture topics include distributed and shared memory, cache coherence,
distributed memory, distributed file systems, cluster-based systems and GPUs. Parallel
algorithm topics cover parallel algorithm models, decomposition techniques and load
balancing and scheduling. Parallel programming includes multi-processor, multi-core
programming and thread programming. Also, the course discusses modern parallel computing
examples, such as MPI, UPC, OpenMP, CUDA and OpenCL, OpenACC. |