Course Details
Subject {L-T-P / C} : CS6115 : Advanced Computer Architecture { 3-0-0 / 3}
Subject Nature : Theory
Coordinator : Pabitra Mohan Khilar
Syllabus
Module 1: Metrics for computer performance: clock rate, MIPS, CPI Strength and weakness of performance metrics role of Amdalh's in computer performance
Hierarchical memory system, main, cache and auxiliary memory, I/O subsystem, Average and Worst case access time, Multi-level cache memory, Split Cache, Cache Consistency.
Module 2: Classification of computer architecture: SIMD, MIMD, SISD and MISD Processing unit design: Data path implementation, Microprogrammed execution.
Principles of pipelining and vector processing: Pipelining, Instruction and Arithmetic Pipelines, Principles of Designing Pipelined Processor,Instruction pipelining and parallel processing,
Module 3: Instruction level parallelism: VLIW, Vector processor, Multithreaded processor, Superscalar architecture branch prediction Prefetching Speculative execution Vector Processing Requirements. Structure and Algorithms for array processors: SIMD Array Processors, SIMD Interconnection Networks, Parallel Algorithms for array Processors, Programming, Performance Evaluation and Compiler Transformations for parallel computers.
Module 4: Associative Array Processing. Multiprocessor architecture and programming: Inter processor Communication Mechanisms, System Deadlocks and Protection, Multiprocessor Scheduling Strategies, Parallel Algorithm for Multiprocessor. Multiprocessor and Multi Computer architectures. Cache coherence problem.
Module 5: Recent advances in computer architecture. Introduction to Clusters, Grids, Cloud, Fog and Mist Computers. Safety and Fault Tolerance of Computer Architectures, Applications of Advanced Computer Architecture.
Course Objectives
- To identify the requirement for improving the performance of computing systems
- To understand the overlapped and simultaneous parallelism
- To identify the characteristics and performance of interconnection networks
- To design and develop computing systems for different applications
Course Outcomes
Understanding the key requirement of computer system architecture
Designing parallel algorithms for different architectures
Essential Reading
- J. L.Henessy and D. A. Pattersan,, Computer Architecture A Quantitative approach,, Elsevier , 1998
- V.Rajaraman and C.Sivaramamurthy, Parallel Computers Architecture and Programming, PHI , 1998
Supplementary Reading
- Kai Hwang, Advanced Computer Architecture: Parallelism, Scalability, Programmability, Tata McGraw Hill , 2009
- H.G.Cragon, Memory Systems and Pipelined Processors, Narosa , 2009