Monday, 10 December 2012

MULTICORE PROGRAMMING Syllabus

CS2021 MULTICORE PROGRAMMING L T P C
3 0 0 3
UNIT I INTRODUCTION TO MULTIPROCESSORS AND
SCALABILITY ISSUES 9
Scalable design principles – Principles of processor design – Instruction Level
Parallelism, Thread level parallelism. Parallel computer models –- Symmetric and
distributed shared memory architectures – Performance Issues – Multi-core
Architectures - Software and hardware multithreading – SMT and CMP architectures –
Design issues – Case studies – Intel Multi-core architecture – SUN CMP architecture.
64
UNIT II PARALLEL PROGRAMMING 9
Fundamental concepts – Designing for threads – scheduling - Threading and parallel
programming constructs – Synchronization – Critical sections – Deadlock. Threading
APIs.
UNIT III OPENMP PROGRAMMING 9
OpenMP – Threading a loop – Thread overheads – Performance issues – Library
functions. Solutions to parallel programming problems – Data races, deadlocks and
livelocks – Non-blocking algorithms – Memory and cache related issues.
UNIT IV MPI PROGRAMMING 9
MPI Model – collective communication – data decomposition – communicators and
topologies – point-to-point communication – MPI Library.
UNIT V MULTITHREADED APPLICATION DEVELOPMENT 9
Algorithms, program development and performance tuning.
TEXT BOOKS:
TOTAL: 45 PERIODS
1. Shameem Akhter and Jason Roberts, “Multi-core Programming”, Intel Press,
2006.
2. Michael J Quinn, Parallel programming in C with MPI and OpenMP, Tata
Macgraw Hill, 2003.
REFERENCES:
1. John L. Hennessey and David A. Patterson, “ Computer architecture – A quantitative
approach”, Morgan Kaufmann/Elsevier Publishers, 4th. edition, 2007.
2. David E. Culler, Jaswinder Pal Singh, “Parallel computing architecture : A
hardware/ software approach” , Morgan Kaufmann/Elsevier Publishers, 1999.
CS2022

No comments:

Post a Comment