Computer Architecture
0
2020-2021
02000605
Digital Systems and Computers
Portuguese
English
Face-to-face
6.0
Elective
2nd Cycle Studies - Mestrado
Recommended Prerequisites
Computer Programming, Data Structures and Algorithms, Microprocessors, Operating Systems.
Teaching Methods
Theoretical classes with detailed presentation, using audiovisual means, of the concepts, principles and fundamental theories and solving of basic practical exercises to illustrate the practical interest of the subject and exemplify its application to real cases.
Theoretical-practical classes where the students, supervised by the staff member, solve practical exercises, which require the combination of different theoretical concepts and promote critical reasoning in the presence of more complex problems.
Laboratory classes where execution of specific developments and consequent results analysis.
Learning Outcomes
This course objectives are: the introduction of the fundamental techniques that root current computing systems, the development of competencies in the analysis of the implications of the different options on a high performance computing project, and provide experience in the development of software for such systems. The competencies acquired along this course enable the students to develop high performance computational systems and application.
Work Placement(s)
NoSyllabus
1. Fundamentals of Computer Architecture
Basic concepts. Performance evaluation metrics
2. Instruction level parallelism
Instruction Level Parallelism limitations. Static and dynamic optimizations. Predictors, speculation and dependency reduction.
3. Memory hierarchy
Spatial and temporal locality. Cache organization and optimization.
Protection issues. Virtual memory and virtual machines.
4. Multimedia extensions and vectorial processors
Advantages of the vectorial instructions/architectures. Changes in processors architectures to support vectorial instructions.
5. Multiprocessor systems and task level parallelism
Symmetric and assymetric shared memory architectures.
Distributed shared memory and consistency issues. MPI and OpenMP
6. Data storage
Storage supports and types of faults. I/O performance. Redundant systems.
Head Lecturer(s)
Paulo Jorge Carvalho Menezes
Assessment Methods
Assessment
Laboratory work or Field work: 40.0%
Exam: 60.0%
Bibliography
John L. Hennessy, David A. Patterson, Computer Architecture: A Quantitative Approach, 5th Edition, Morgan Kaufmann, 2011