Multiprocessors

Credits
6
Types
Specialization compulsory (Computer Engineering)
Requirements
  • Prerequisite: AC2
  • Prerequisite: PAR
Department
AC
The main objective of this course is for the student to acquire the basics of memory consistency and cache coherence in multiprocessor systems. The subject content covers the spectrum of multiprocessors from small scale to scalable multiprocessors. It also focuses on the availability and use of atomic read-modify-write instructions. Specifically, the topics developed enable the evaluation of the performance of a multiprocessor system when executing parallel applications. They also enable the use of hardware description languages and their use for the specification of the memory hierarchy in a multiprocessor.

Teachers

Person in charge

  • Jose M. Llaberia Griñó ( )

Others

  • Adrià Armejach Sanosa ( )
  • Ramon Canal Corretger ( )

Weekly hours

Theory
2
Problems
1
Laboratory
1
Guided learning
0
Autonomous learning
6

Competences

Technical Competences

Common technical competencies

  • CT6 - To demonstrate knowledge and comprehension about the internal operation of a computer and about the operation of communications between computers.
    • CT6.2 - To demonstrate knowledge, comprehension and capacity to evaluate the structure and architecture of computers, and the basic components that compound them.
  • CT7 - To evaluate and select hardware and software production platforms for executing applications and computer services.
    • CT7.1 - To demonstrate knowledge about metrics of quality and be able to use them.

Transversal Competences

Autonomous learning

  • G7 [Avaluable] - To detect deficiencies in the own knowledge and overcome them through critical reflection and choosing the best actuation to extend this knowledge. Capacity for learning new methods and technologies, and versatility to adapt oneself to new situations.
    • G7.3 - Autonomous learning: capacity to plan and organize personal work. To apply the acquired knowledge when performing a task, in function of its suitability and importance, decide how to perform it and the needed time, and select the most adequate information sources. To identify the importance of establishing and maintaining contacts with students, teacher staff and professionals (networking). To identify information forums about ICT engineering, its advances and its impact in the society (IEEE, associations, etc.).

Technical Competences of each Specialization

Computer engineering specialization

  • CEC2 - To analyse and evaluate computer architectures including parallel and distributed platforms, and develop and optimize software for these platforms.
    • CEC2.1 - To analyse, evaluate, select and configure hardware platforms for the development and execution of computer applications and services.
  • CEC3 - To develop and analyse hardware and software for embedded and/or very low consumption systems.
    • CEC3.2 - To develop specific processors and embedded systems; to develop and optimize the software of these systems. 

Objectives

  1. Training to understand the basic concepts in multiprocessors: terminology, organization, elements of a Multiprocessor, consistency and coherence in memory.
    Related competences: CEC2.1, CT6.2, G7.3,
  2. Training to understand the basic concepts of communication and synchronization in a multiprocessor.
    Related competences: CEC2.1, CT6.2, G7.3,
  3. Training to understand the constraints imposed by technology, through the operation of ideal solutions adopted and implemented a multiprocessor.
    Related competences: CEC3.2, CT6.2,
  4. Capacity to analyze and critically evaluate a multiprocessor and its elements.
    Related competences: CEC2.1, CT7.1, CT6.2,
  5. Training for the use of a hardware description language and its application in the specification of elements of a Multiprocessor
    Related competences: CEC3.2, CT7.1, CT6.2,

Contents

  1. Motivation
    Obstacles exist to exploit the parallelism at the level of instruction. Increased productivity of a multithreaded processor using the technique. Use the available number of transistors on a chip using the technique of replication of processors.
  2. Consistency and coherence of memory
    Concepts of memory consistency and cache coherency. Memory model specified in the machine language. Need to maintain consistency among copies of data.
  3. Multiprocessor core
    Elements of a multiprocessor system. Private Cache. Interconnection Network: Support for a model of consistency. Coherence cache.
  4. Communication and synchronization
    Support the machine language for communication and synchronization. Basic mechanisms of synchronization.
  5. Small-scale multiprocessor
    Increased performance. Reduction of bandwidth required. Cache.Multiprocesador coherence protocols on a chip.
  6. Scalable multiprocessor
    Implications of the number of processors in a multiprocessor architecture. Interconnection of several chip multiprocessor.

Activities

Activity Evaluation act


Test

Evaluation goal for the first three issues.
Objectives: 1 4 5
Week: 8
Type: theory exam
Theory
2h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
10h

Consolidation

Final exam. Evaluation of all the objectives of the course.
Objectives: 1 3 4 5 2
Week: 15 (Outside class hours)
Type: theory exam
Theory
3h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
8h

Motivation

To study the theoretical concepts of the subject and resolve financial problems and proposed.
Objectives: 1 4 5
Contents:
Theory
3h
Problems
2h
Laboratory
1h
Guided learning
0h
Autonomous learning
6h

Consistency and coherence of memory

To study the theoretical concepts of the subject and resolve financial problems and proposed.
Objectives: 1 5
Contents:
Theory
4h
Problems
2h
Laboratory
3h
Guided learning
0h
Autonomous learning
12h

Multiprocessor core

To study the theoretical concepts of the subject and resolve financial problems and proposed.
Objectives: 1 4 5
Contents:
Theory
6h
Problems
3h
Laboratory
4h
Guided learning
0h
Autonomous learning
16h

Communication and synchronization

To study the theoretical concepts of the subject and resolve financial problems and proposed.
Objectives: 5 2
Contents:
Theory
4h
Problems
2h
Laboratory
3h
Guided learning
0h
Autonomous learning
10h

Small-scale multiprocessor

To study the theoretical concepts of the subject and resolve financial problems and proposed.
Objectives: 3 5
Contents:
Theory
5h
Problems
4h
Laboratory
4h
Guided learning
0h
Autonomous learning
14h

Scalable multiprocessor

To study the theoretical concepts of the subject and resolve financial problems and proposed.
Objectives: 3 4
Contents:
Theory
3h
Problems
2h
Laboratory
0h
Guided learning
0h
Autonomous learning
14h

Theory
0h
Problems
0h
Laboratory
0h
Guided learning
0h
Autonomous learning
0h

Teaching methodology

Classes theory in which concepts are developed and there is student participation.
Classes of problems which apply the concepts developed in the theory classes and is an active student.
Laboratory classes in which to apply the concepts developed in theory class a concrete example of multiprocessor. The active agent is pupils and collaboration between elements of the group is the means to increase and consolidate knowledge.
The course is developed constructively. In other words, is part of the concepts learned in previous courses in each subject and the subject of increased knowledge and ability to understand, analyze and reason about aspects of a multiprocessor. This training is more quantitative.

Evaluation methodology

Proof (P): Written test which evaluated the goal for the first three issues.
Final exam (F): Written test which evaluated all the objectives of the course.
Laboratory (L) is evaluated based on reports submitted in each of the sessions and, if appropriate, a personal interview.

The final (NF) is calculated using the following expression:
NF = max (0.8 x F (0.65 x F + 0.15 P)) + 0.2 x L

The level of achievement of generic competition evaluated indirectly from the notes of evidence and the final exam.
The corresponding note is:
A if 8.5 =< NF; B if 7 =< NF < 8.5; C if 5 =< NF < 7; D if NF < 5

Bibliography

Basic:

Previous capacities

The subjects listed in IC, EC, EP, AC, PAR, AC2