La connaissance des architectures matérielles modernes est un prérequis indispensable à la construction de solutions informatiques matérielles et logicielles respectant les contraintes énergétiques et les besoins applicatifs des utilisateurs dans un contexte de massification des données. Ce cours donnera les connaissances et les outils de conception de programmes pour les architectures modernes telles que les CPU multi-cœurs (OpenMP) avec extensions vectorielles (SIMD) et les GPU (CUDA).