M2_SETI/A4/cours.md
2023-01-30 11:26:08 +01:00

27 lines
No EOL
730 B
Markdown

# Cours A4
## 16/01 SIMD
-01 pas d'opti
-03 opti avec parallélisation, on transforme en a + b*c
-ffast-math, ignore les erreurs dans les données
https://www.intel.com/content/www/us/en/docs/intrinsics-guide/index.html
<xmmintrin.h>
si la fonction est de type
for (i=0, i++)
f(d[i]...)
{+ - / *}
float / double
on ne touche pas à la fonction, le compilateur sait vectoriser.
sinon, on va aller chercher dans les fonctions simd
attention aux shuffles, la partie 1 ne contient que des données de a et la partie 2 que des données de b.
## 19/01 OpenMP
$P41
Attention aux clauses, si les temps d'exécutions dans les itérations sont identiques, la demande de travail est plus coûteuse que le gain apporté.