Professional Documents
Culture Documents
Csi3021 Advanced-computer-Architecture Th 1.0 66 Csi3021 61 Acp
Csi3021 Advanced-computer-Architecture Th 1.0 66 Csi3021 61 Acp
3 0 0 0 3
Pre-requisite CSI1004 Syllabus version
1.0
Course Objectives:
1. Introduce the recent trends in the field of Computer Architecture and identify
performance related parameters.
2. Apply fundamental techniques to speed-up program execution.
3. Expose the different types of multicore architectures and Programming.
Course Outcome:
1. Understand the organization and performance characteristics of modern computer
architectures.
2. Interpret techniques to improve processor’s ability to exploit Instruction Level
Parallelism.
3. Point out how data level and thread level parallelisms is exploited in architectures.
4. Identify characteristics and challenges in multiprocessor and multicore architectures.
5. Develop parallel programming for computer problems.
Student Learning Outcomes (SLO): 2, 12, 14
Module:1 Introduction to Advanced Computer Design 5 hours
Fundamentals of Computer Design- Fundamentals of RISC, CISC architecture- Data path
implementation-Single cycle Data path- Multi cycle data path-Multi cycle Instruction execution-
Instruction Scheduling.
Module:2 Instruction Level Parallelism 8 hours
Introduction to Instruction Level Parallelism – Concepts and Challenges – Advanced Branch
Prediction - Dynamic Scheduling – Static scheduling- Hardware-Based Speculation –
Multithreading - Limitations of ILP.
Module:3 Data Level Parallelism 5 hours
Vector architecture – SIMD extensions – Graphical Processing Units and applications – Loop
level parallelism.
Module:4 Multi-Threading Concepts 6 hours
Basic concepts of threading- Concurrency, Parallelism -Threading design concepts for
developing an application- Correctness Concepts: Critical Region, Mutual exclusion,
Synchronization, Race Conditions- Performance Concepts: Simple Speedup, Computing
Speedup, Efficiency , Granularity , Load Balance
Module:5 Multi-Processor Architecture 6 hours
Need for multi-core architectures, Architecting with multi-cores, Homogenous and
heterogeneous cores, Shared recourses, shared busses, and optimal resource sharing strategies.
Performance evaluation of multi-core processors, Error management
Module:6 Multi core architecture 7 hours
Introduction- Centralized, Symmetric and Distributed Shared Memory Architectures –Cache
Coherence Issues – Performance Issues – Synchronization – Models of Memory Consistency
Module:7 Multi Core and GPU Programming 6 hours
Multi core programming using OpenMP, OpenMP Directives, Parallel constructs, Work-sharing
constructs, Data environment constructs, Synchronization constructs
Module:8 Recent Trends 2 hours
Total hours: 45 hours
Text Book(s)
1. John L. Hennessey and David A. Patterson, ―Computer Architecture – A Quantitative
Approach, Morgan Kaufmann , Elsevier, 6th edition, 2017.