4.3.2 : Performance avec les NaN



La figure 26 montre les performance obtenues avec une racine carrée lorsqu'il traite des tableaux initialisés ou non avec des NaN. On constate que la présence de NaN ne dégrade pas les performances, bien au contraire.

nothing nothing

Figure 26 : Performances obtenues avec l'optimisation -O3 entre une racine carrée de référence (+ violet) et la même fonction mais sur des tableaux initialisés aléatoirement avec des NaN, entre 1 (001) et 100\% (1). À gauche, le temps total en nanosecondes en fonctions du nombre d'éléments. À droite, le temps par élément en nanosecondes en fonctions du nombre d'éléments.



La figure 27 montre les performance obtenues avec une racine carrée vectorisé lorsqu'il traite des tableaux initialisés ou non avec des NaN. On constate que la présence de NaN ne dégrade pas les performances, bien au contraire.

nothing nothing

Figure 27 : Performances obtenues avec l'optimisation -O3 entre une racine carrée vectorisé (+ violet) et la même fonction mais sur des tableaux initialisés aléatoirement avec des NaN, entre 1 (001) et 100\% (1). À gauche, le temps total en nanosecondes en fonctions du nombre d'éléments. À droite, le temps par élément en nanosecondes en fonctions du nombre d'éléments.



La figure 28 montre les performance obtenues avec une racine carrée en fonction intrisèques lorsqu'il traite des tableaux initialisés ou non avec des NaN. On constate que la présence de NaN ne dégrade pas les performances, bien au contraire.

nothing nothing

Figure 28 : Performances obtenues avec l'optimisation -O3 entre une racine carrée en fonction intrisèques (+ violet) et la même fonction mais sur des tableaux initialisés aléatoirement avec des NaN, entre 1 (001) et 100\% (1). À gauche, le temps total en nanosecondes en fonctions du nombre d'éléments. À droite, le temps par élément en nanosecondes en fonctions du nombre d'éléments.