This course will introduce you to the multiple forms of parallelism found in modern Intel architecture processors and teach you the programming frameworks for handling this parallelism in applications. You will get access to a cluster of modern manycore processors (Intel Xeon Phi architecture) for experiments with graded programming exercises.
Class Deals by MOOC List - Click here and see Coursera's Active Discounts, Deals, and Promo Codes.
This course can apply to various HPC and datacenter workloads and framework including artificial intelligence (AI). You will learn how to handle data parallelism with vector instructions, task parallelism in shared memory with threads, parallelism in distributed memory with message passing, and memory architecture parallelism with optimized data containers. This knowledge will help you to accelerate computational applications by orders of magnitude, all the while keeping your code portable and future-proof.
Syllabus
WEEK 1: Modern Code; In the Introduction we will learn...
WEEK 2: Vectorization
WEEK 3: Multithreading with OpenMP
WEEK 4: Memory Traffic
WEEK 5: Clusters and MPI