Main Page
1.
Introduction
❱
1.1.
Utilisation de bibliothèques
1.2.
Ensemble de fonctions CMake
1.3.
CMakeLists.txt pricipal du projet
2.
Construire la bibliothèque d'initialisation aléatoire
❱
2.1.1.
Le header de la bibliothèque
2.1.2.
Les implémentations templates de la bibliothèque
2.1.3.
Les sources de la bibliothèque
2.1.4.
Le fichier CMakeLists.txt
3.
Performances avec un produit de hadamard
❱
3.1.
Conception du projet
❱
3.1.1.
Évaluation du nombre de tests à développer
❱
3.1.1.1.
Implémentation des tests de référence
3.1.1.2.
Implémentation des tests avec des nombres exotiques
3.1.2.
Comment réduire le nombre de développement
3.2.
Implémentation
❱
3.2.1.
Fonctions de calcul
❱
3.2.1.1.
Produit de Hadamard classique
❱
3.2.1.1.1.
Le fichier header
3.2.1.1.2.
Le fichier source
3.2.1.2.
Produit de Hadamard vectorisé
❱
3.2.1.2.1.
Le fichier header
3.2.1.2.2.
Le fichier source
3.2.1.3.
Produit de Hadamard avec des fonctions intrinsèques
❱
3.2.1.3.1.
Le fichier header
3.2.1.3.2.
Le fichier source
3.2.2.
Main générique
3.2.3.
Fonctions CMake
3.2.4.
CMakeLists.txt
3.2.5.
Mise à jour du fichier Examples/CMakeLists.txt
3.3.
Compilation
3.4.
Resultats
❱
3.4.1.
Performances de références
3.4.2.
Performance avec les NaN
3.4.3.
Performance avec les Inf
3.4.4.
Performance avec les nombres dénormalisés
❱
3.4.4.1.
Initialisation avec des nombres dénormalisés
❱
3.4.4.1.1.
Cas classique
3.4.4.1.2.
Cas avec le flag denorm to zero
3.4.4.2.
Calcul qui produit des nombres dénormalisés
4.
Performances avec une racine carré
❱
4.1.
Implémentation
❱
4.1.1.
Fonctions de calcul
❱
4.1.1.1.
Racine carré classique
❱
4.1.1.1.1.
Le fichier header
4.1.1.1.2.
Le fichier source
4.1.1.2.
Racine carré vectorisée
❱
4.1.1.2.1.
Le fichier header
4.1.1.2.2.
Le fichier source
4.1.1.3.
Racine carré avec des fonctions intrinsèques
❱
4.1.1.3.1.
Le fichier header
4.1.1.3.2.
Le fichier source
4.1.2.
Main générique
4.1.3.
Fonctions CMake
4.1.4.
CMakeLists.txt
4.1.5.
Mise à jour du fichier Examples/CMakeLists.txt
4.2.
Compilation
4.3.
Resultats
❱
4.3.1.
Performances de références
4.3.2.
Performance avec les NaN
4.3.3.
Performance avec les Inf
4.3.4.
Performance avec les nombres dénormalisés
❱
4.3.4.1.
Cas classique
4.3.4.2.
Cas avec le flag denorm to zero
5.
Performances avec des fonctions de la libraries standard
❱
5.1.
Implémentation
❱
5.1.1.
Fonctions de calcul
❱
5.1.1.1.
Appel de fonction classique
❱
5.1.1.1.1.
Le fichier header
5.1.1.1.2.
Le fichier source
5.1.1.2.
Appel de fonction vectorisé
❱
5.1.1.2.1.
Le fichier header
5.1.1.2.2.
Le fichier source
5.1.2.
Main générique
5.1.3.
Fonctions CMake
5.1.4.
CMakeLists.txt
5.1.5.
Mise à jour du fichier Examples/CMakeLists.txt
5.2.
Compilation
5.3.
Resultats
❱
5.3.1.
Performance avec la fonction sin
❱
5.3.1.1.
Performances de références
5.3.1.2.
Performance avec les NaN
5.3.1.3.
Performance avec les Inf
5.3.1.4.
Performance avec les nombres dénormalisés
❱
5.3.1.4.1.
Cas classique
5.3.1.4.2.
Cas avec le flag denorm to zero
5.3.2.
Performance avec la fonction cos
❱
5.3.2.1.
Performances de références
5.3.2.2.
Performance avec les NaN
5.3.2.3.
Performance avec les Inf
5.3.2.4.
Performance avec les nombres dénormalisés
❱
5.3.2.4.1.
Cas classique
5.3.2.4.2.
Cas avec le flag denorm to zero
5.3.3.
Performance avec la fonction tan
❱
5.3.3.1.
Performances de références
5.3.3.2.
Performance avec les NaN
5.3.3.3.
Performance avec les Inf
5.3.3.4.
Performance avec les nombres dénormalisés
❱
5.3.3.4.1.
Cas classique
5.3.3.4.2.
Cas avec le flag denorm to zero
6.
Performances avec un produit de matrices
❱
6.1.
Implémentation
❱
6.1.1.
Fonctions de calcul
❱
6.1.1.1.
Produit de matrices naïf
❱
6.1.1.1.1.
Le fichier header
6.1.1.1.2.
Le fichier source
6.1.1.2.
Produit de matrices classique
❱
6.1.1.2.1.
Le fichier header
6.1.1.2.2.
Le fichier source
6.1.1.3.
Produit de matrices vectorisé
❱
6.1.1.3.1.
Le fichier header
6.1.1.3.2.
Le fichier source
6.1.1.4.
Produit de matrices avec des fonctions intrinsèques
❱
6.1.1.4.1.
Le fichier header
6.1.1.4.2.
Le fichier source
6.1.2.
Main générique
6.1.3.
Fonctions CMake
6.1.4.
CMakeLists.txt
6.1.5.
Mise à jour du fichier Examples/CMakeLists.txt
6.2.
Compilation
6.3.
Resultats
❱
6.3.1.
Performances de références
6.3.2.
Performance avec les NaN
6.3.3.
Performance avec les Inf
6.3.4.
Performance avec les nombres dénormalisés
❱
6.3.4.1.
Initialisation avec des nombres dénormalisés
❱
6.3.4.1.1.
Cas classique
6.3.4.1.2.
Cas avec le flag denorm to zero
6.3.4.2.
Calcul qui produit des nombres dénormalisés
Navy
4.1.1 : Fonctions de calcul
4.1.1.1) Racine carré classique
4.1.1.2) Racine carré vectorisée
4.1.1.3) Racine carré avec des fonctions intrinsèques
Afin de simplifier au maximum l'utilisation des macros dans le fichier
main.cpp
nous allons donner le même nom aux fichiers
header
et
source
qu'à la fonction qu'ils décrivent.