Advanced computer architecture (2012/2013)

Course code
4S02910
Name of lecturer
Nicola Bombieri
Coordinator
Nicola Bombieri
Number of ECTS credits allocated
6
Academic sector
ING-INF/05 - INFORMATION PROCESSING SYSTEMS
Language of instruction
Italian
Location
VERONA
Period
II semestre dal Mar 4, 2013 al Jun 14, 2013.

Lesson timetable

II semestre
Day Time Type Place Note
Monday 8:30 AM - 11:30 AM lesson Lecture Hall C  
Wednesday 2:30 PM - 4:30 PM lesson Laboratory Gamma  

Learning outcomes

The course will provide theoretical and practical knowledge on definition, design and analysis of advanced computer architecture with more emphasis on multicore and GP-GPU architectures.

Syllabus

Module THEORY (32h):
-) Introduction to parallelism and parallel architectures.
-) Parallel architecture models and programming.
-) Performance evaluation and analysis
-) Amdhal’s law and metrics for performance measurement.
-) Pipeline basics and advanced concepts.
-) Instruction-level parallelism (ILP).
-) Advanced branch prediction, static scheduling e speculation.
-) Memory hierarchy: basics and advanced concepts.
-) Virtual memory.
-) Thread-level parallelism (TLP).
-) Cache coherence in shared memory architectures.
-) Snoopy protocols.
-) Data-level parallelism (DLP).
-) General purpose Graphic Processing Unit (GP-GPU).
-) GP-GPU programming: CUDA and OpenCL.
-) Introduction to Grid and Cloud Computing.

Module LAB (24h):
-) Parallel compilers for multicore architectures (OpenMP).
-) Parallel compilers for clusters (MPI).
-) GP-GPU programming: CUDA, OpenCL.

To attend the teaching successfully, it is recommended that the student has already acquired skills in:
*) Basics of computer architectures. In particular: the instruction set, processing unit, memory hierarchy, pipeline.
*) Basics of operating systems. In particular: the concept of process and thread, memory virtualization.
*) Basics of Programming. In particular: basic concepts of C programming and Assembly

Reference books
Author Title Publisher Year ISBN Note
John L. Hennessy and David A. Patterson Computer Architecture - A Quantitative Approach (Edizione 4) Morgan Kaufmann 2007

Assessment methods and criteria

Preliminary test + lab project