Goals

This course aims to study the execution of applications on computing architectures from the points of view of functionality, performance and energy efficiency. In this context, parallel hardware architectures (multi-core processors, SIMD machines and GPUs), hardware communications resources (bus and network) as well as the efficient deployment of applications on these hardware resources will be discussed: task placement, hardware / software partitioning and matching algorithm requirements to architecture resources. Techniques for estimating energy consumption will be presented and will make it possible to estimate the cost of memory access, calculations and communications.

Programme

Principles of hardware/software partitioning and processor sizing Multi-core architectures and programming Strategies for deploying tasks and reducing consumption Energy cost of inter-core communication or distributed computing Multi-level abstraction energy estimation of software execution

Personal work and study class: analysis of energy-efficient supercomputers (green500.org) Practical work (2 4-hour sessions): programming an image filter on an embedded GPU, optimization of performance/energy consumption

Study
4h
 
Course
16h
 
PW
8h
 

Responsibles

  • Ian O CONNOR
  • Alberto BOSIO

Language

French

Keywords

Energy consumption in digital electronic systems, Low power design techniques, Parallel computing architectures, Application deployment, matching algorithm requirements to architecture resources