Go to:
Esta página em português Ajuda Autenticar-se
Clube de Leitura FEUP :: Vamos a Livros
You are here: Start > PRODEI039

Site map
Edifício A (Administração) Edifício B (Aulas) - Bloco I Edifício B (Aulas) - Bloco II Edifício B (Aulas) - Bloco III Edifício B (Aulas) - Bloco IV Edifício C (Biblioteca) Edifício D (CICA) Edifício E (Química) Edifício F (Minas e Metalurgia) Edifício F (Minas e Metalurgia) Edifício G (Civil) Edifício H (Civil) Edifício I (Electrotecnia) Edifício J (Electrotecnia) Edifício K (Pavilhão FCNAUP) Edifício L (Mecânica) Edifício M (Mecânica) Edifício N (Garagem) Edifício O (Cafetaria) Edifício P (Cantina) Edifício Q (Central de Gases) Edifício R (Laboratório de Engenharia do Ambiente) Edifício S (INESC) Edifício T (Torre do INEGI) Edifício U (Nave do INEGI) Edifício X (Associação de Estudantes)

High-Performance Embedded Computing

Code: PRODEI039     Acronym: CEED

Classification Keyword
OFICIAL Comp. Architectures, Operating and Networks Sys.

Instance: 2018/2019 - 2S

Active? Yes
Responsible unit: Department of Informatics Engineering
Course/CS Responsible: Doctoral Program in Informatics Engineering

Cycles of Study/Courses

Acronym No. of Students Study Plan Curricular Years Credits UCN Credits ECTS Contact hours Total Time
PRODEI 0 Syllabus 1 - 6 28 162

Teaching Staff - Responsibilities

Teacher Responsibility
João Manuel Paiva Cardoso

Teaching - Hours

Recitations: 2,00
Type Teacher Classes Hour
Recitations Totals 1 2,00
João Manuel Paiva Cardoso 2,00

Teaching language

Suitable for English-speaking students


O1. To learn about the processes, methodologies, and best practices associated to the development of applications in the context of high-performance embedded computing systems;

O2. To develop a scientific criticism spirit and skills for analysis of scientific work in the high-performance embedded computing research area;

O3. To acquire the capability to conclude and present a project related with the development of an application in the context of high-performance embedded computing systems;

Learning outcomes and competences

At the end of the semester, students should:
• Be able to identify important contributions to high-performance embedded computing;
• Be able to identify the main problems and challenges on mapping and optimizing applications;
• Understand code transformations, compiler optimizations, and their benefits;
• Understand available tools to help tuning and mapping an application to an embedded computing system, possibly consisting of multiple heterogeneous/homogeneous cores;
• Be able to tune an application according to specific requirements such as performance and energy consumption;

Working method



1. Introduction to Embedded Systems and Embedded Computing
2. Advanced Computing Systems and Reconfigurable Computing
3. Performance Analysis and Identification of Hot-Spots
4. Amdhal’s Law: main lessons and extensions to multi-core computing
5. Mapping Applications to Multi-Core Embedded Systems
6. Compiler Optimizations and Code Transformations
7. Tools for Simulating, Debugging, Profiling, and Optimizing
8. Main Trends and Challenges

Mandatory literature

João M. P. Cardoso, José Gabriel Coutinho, and Pedro C. Diniz; Embedded Computing for High Performance, Morgan Kaufmann (Elsevier), 2017. ISBN: 9780128041895
various authors; • Selected papers from prestigious international journals and conferences

Complementary Bibliography

Wayne Wolf ; High-Performance Embedded Computing: Architectures, Applications, and Methodologies, Morgan Kaufman, 2006
João M. P. Cardoso, and Michael Huebner; Reconfigurable Computing: From FPGAs to Hardware/Software Codesign, Springer, 2011
• Joseph A. Fisher, Paolo Faraboschi, Cliff Young; Embedded computing - a VLIW approach to architecture, Morgan Kaufmann , 2005
S. Hauck, A. DeHon (editors); Reconfigurable Computing: The Theory and Practice of FPGA-Based Computation, Morgan Kaufmann/Elsevier, 2008
João M. P. Cardoso, and Pedro C. Diniz; Compilation Techniques for Reconfigurable Architectures, Springer, 2008

Teaching methods and learning activities

Classes consist of lectures, tutorials, and presentation and analysis of selected publications. The contents are formally exposed along with presentation and discussion of examples from real-life applications.

In tutorial classes application exercises are proposed. Students will have to work on a project where they will apply most of the concepts presented during the course.


Technological sciences > Technology > Computer technology > Software technology
Technological sciences > Engineering > Computer engineering

Evaluation Type

Distributed evaluation without final exam

Assessment Components

Designation Weight (%)
Defesa pública de dissertação, de relatório de projeto ou estágio, ou de tese 30,00
Participação presencial 10,00
Trabalho de campo 60,00
Total: 100,00

Amount of time allocated to each course unit

Designation Time (hours)
Elaboração de projeto 40,00
Elaboração de relatório/dissertação/tese 8,00
Estudo autónomo 26,00
Frequência das aulas 30,00
Trabalho de investigação 12,00
Trabalho laboratorial 9,00
Total: 125,00

Eligibility for exams


Calculation formula of final grade

AD: distributed evaluation consists of three components, PART, PAD, and PROJ = 0.10 PART + 0.30 PAD + 0.60 PROJ

PART: participation.

PAD: presentation, analysis and discussion of selected publications.

PROJ: project and technical report.

Grade = rounded(0.10 PART + 0.30 PAD + 0.60 PROJ).

Examinations or Special Assignments


Special assessment (TE, DA, ...)


Classification improvement

The grade can be improved in the next occurrence of the UC.


The pre-requirements are: compilers, computer architecture, programming languages.

Recommend this page Top
Copyright 1996-2019 © Faculdade de Engenharia da Universidade do Porto  I Terms and Conditions  I Accessibility  I Index A-Z  I Guest Book
Page generated on: 2019-03-20 at 10:17:04