Competencies and objectives

 

Course context for academic year 2024-25

The subject Software Development in Parallel Architectures is part of the "Computer Engineering" module or specific technology of the degree in Computer Engineering that will enable students to work on parallel architectures, as well as develop and optimize software for them.

High performance computing (HPC) has been used for decades, both at a scientific and industrial level, as a support tool for engineering problems with a large amount and calculation power. Computing speed has limits and restrictions that are gradually being passed down. New increases in the speed of computers must be sought in parallelism, which consists of replicating information processing units with the objective of distributing tasks between them, spatially or temporally, and carrying out the execution of the program, in a lower time. The architectures of this type of computers are called parallel architectures, and it is in matrix computing where these architectures can be considered especially suitable, since that field contains a high degree of implicit parallelism. In addition, matrix computing has many applications, among which we can mention applications in control problems and applications in signal processing. Examples of this problem can be found in biomedical signal processing, image processing and speech recognition, seismic signal processing, etc.

In recent years, high-performance computing has undergone a rapid shift towards lower-cost HPC implementations using multiple computing elements (nodes) that collaborate to solve a common task in parallel: we would be talking about clusters. In fact, microprocessor-based clusters are now the dominant HPC architecture, rising from 6.6% in the Top 500 in 2000 to around 90% today.

The appearance of these parallel computers has given rise not only to an adaptation of the classic computing algorithms for their implementation and execution in said computers, but also the search for new methods that obtain a good performance of the machine.

 

 

Course content (verified by ANECA in official undergraduate and Master’s degrees) for academic year 2024-25

Specific Competences (Specific Technology):>>Computer Engineering

  • CEIC3 : Capacitat d'analitzar i avaluar arquitectures de computadors, incloent plataformes paral·leles i distribuïdes, així com desenvolupar i optimitzar programari per a les mateixes.

 

Basic Competences

  • CB3 : Que els estudiants tinguen la capacitat de reunir i interpretar dades rellevants (normalment dins de la seua àrea d'estudi) per a emetre judicis que incloguen una reflexió sobre temes rellevants d'índole social, científica o ètica

 

 

 

Learning outcomes (Training objectives)

No data

 

 

Specific objectives stated by the academic staff for academic year 2024-25

  • Show the importance, innovation and need for high performance computing.
  • Provide a general knowledge of parallel programming and parallel systems.
  • Know different programming models and techniques for the design, evaluation and implementation of parallel algorithms.
  • Provide some experience in the parallel and distributed resolution of problems in order to improve performance.
  • Know the most widespread programming environments for the development of parallel systems.
  • Apply knowledge in practical situations, mainly with the formulation of strategies for real problems.

 

 

General

Code: 34051
Lecturer responsible:
PENADES MARTINEZ, JOSE LEANDRO
Credits ECTS: 6,00
Theoretical credits: 1,20
Practical credits: 1,20
Distance-base hours: 3,60

Departments involved

  • Dept: SCIENCE OF COMPUTING AND ARTIFICIAL INTELLIGENCE
    Area: SCIENCE OF COMPUTING AND ARTIFICIAL INTELLIGENCE
    Theoretical credits: 1,2
    Practical credits: 1,2
    This Dept. is responsible for the course.
    This Dept. is responsible for the final mark record.

Study programmes where this course is taught