This document outlines the course details for an advanced computer architectures course covering parallel computing concepts. The course has 5 modules that cover topics such as parallel computer models, hardware technologies, bus and memory architectures, parallel architectures, and software for parallel programming. The course aims to help students understand parallel computing concepts, illustrate different parallel architectures, and learn parallel programming concepts. Students will be evaluated through a 3 hour exam consisting of 10 questions, with students answering 5 full questions selecting one from each module.
This document outlines the course details for an advanced computer architectures course covering parallel computing concepts. The course has 5 modules that cover topics such as parallel computer models, hardware technologies, bus and memory architectures, parallel architectures, and software for parallel programming. The course aims to help students understand parallel computing concepts, illustrate different parallel architectures, and learn parallel programming concepts. Students will be evaluated through a 3 hour exam consisting of 10 questions, with students answering 5 full questions selecting one from each module.
This document outlines the course details for an advanced computer architectures course covering parallel computing concepts. The course has 5 modules that cover topics such as parallel computer models, hardware technologies, bus and memory architectures, parallel architectures, and software for parallel programming. The course aims to help students understand parallel computing concepts, illustrate different parallel architectures, and learn parallel programming concepts. Students will be evaluated through a 3 hour exam consisting of 10 questions, with students answering 5 full questions selecting one from each module.
This document outlines the course details for an advanced computer architectures course covering parallel computing concepts. The course has 5 modules that cover topics such as parallel computer models, hardware technologies, bus and memory architectures, parallel architectures, and software for parallel programming. The course aims to help students understand parallel computing concepts, illustrate different parallel architectures, and learn parallel programming concepts. Students will be evaluated through a 3 hour exam consisting of 10 questions, with students answering 5 full questions selecting one from each module.
(Effective from the academic year 2017 - 2018) SEMESTER – VII Subject Code 17CS72 IA Marks 40 Number of Lecture Hours/Week 4 Exam Marks 60 Total Number of Lecture Hours 50 Exam Hours 03 CREDITS – 04 Module – 1 Teaching Hours Theory of Parallelism: Parallel Computer Models, The State of Computing, 10 Hours Multiprocessors and Multicomputer ,Multivector and SIMD Computers ,PRAM and VLSI Models, Program and Network Properties ,Conditions of Parallelism, Program Partitioning and Scheduling, Program Flow Mechanisms, System Interconnect Architectures, Principles of Scalable Performance, Performance Metrics and Measures, Parallel Processing Applications, Speedup Performance Laws, Scalability Analysis and Approaches. Module – 2 Hardware Technologies: Processors and Memory Hierarchy, Advanced Processor 10 Hours Technology, Superscalar and Vector Processors, Memory Hierarchy Technology, Virtual Memory Technology. Module – 3 Bus, Cache, and Shared Memory ,Bus Systems ,Cache Memory Organizations 10 Hours ,Shared Memory Organizations ,Sequential and Weak Consistency Models ,Pipelining and Superscalar Techniques ,Linear Pipeline Processors ,Nonlinear Pipeline Processors ,Instruction Pipeline Design ,Arithmetic Pipeline Design (Upto 6.4). Module – 4 Parallel and Scalable Architectures: Multiprocessors and Multicomputers 10 Hours ,Multiprocessor System Interconnects, Cache Coherence and Synchronization Mechanisms, Three Generations of Multicomputers ,Message-Passing Mechanisms ,Multivector and SIMD Computers ,Vector Processing Principles ,Multivector Multiprocessors ,Compound Vector Processing ,SIMD Computer Organizations (Upto 8.4),Scalable, Multithreaded, and Dataflow Architectures, Latency-Hiding Techniques, Principles of Multithreading, Fine-Grain Multicomputers, Scalable and Multithreaded Architectures, Dataflow and Hybrid Architectures. Module – 5 Software for parallel programming: Parallel Models, Languages, and Compilers 10 Hours ,Parallel Programming Models, Parallel Languages and Compilers ,Dependence Analysis of Data Arrays ,Parallel Program Development and Environments, Synchronization and Multiprocessing Modes. Instruction and System Level Parallelism, Instruction Level Parallelism ,Computer Architecture ,Contents, Basic Design Issues ,Problem Definition ,Model of a Typical Processor ,Compiler-detected Instruction Level Parallelism ,Operand Forwarding ,Reorder Buffer, Register Renaming ,Tomasulo’s Algorithm ,Branch Prediction, Limitations in Exploiting Instruction Level Parallelism ,Thread Level Parallelism. Course outcomes: The students should be able to: • Understand the concepts of parallel computing and hardware technologies • Illustrate and contrast the parallel architectures • Recall parallel programming concepts Question paper pattern The question paper will have ten questions. There will be 2 questions from each module. Each question will have questions covering all the topics under a module. The students will have to answer 5 full questions, selecting one full question from each module. Text Books: 1. Kai Hwang and Naresh Jotwani, Advanced Computer Architecture (SIE): Parallelism, Scalability, Programmability, McGraw Hill Education 3/e. 2015 Reference Books: 1. John L. Hennessy and David A. Patterson, Computer Architecture: A quantitative approach, 5th edition, Morgan Kaufmann Elseveir, 2013