Chapter 2.3 : Lancement du programme



Si on lance notre programme, nous obtenons :

./simple_hadamard_product_better_init 
x = 0, y = 0, res = 0


Ça ne vole pas très haut, mais au moins ça fonctionne.

Si on demande à time :

time ./simple_hadamard_product_better_init
x = 0, y = 0, res = 0

real 0m0,333s user 0m0,972s sys 0m0,253s


On voit que le temps d'exécution est bien plus faible 0.812s contre 2.647s précédemment. Il est vrai que c'est un petit exemple, ce qui implique que le temps d'initialisation compte pour beaucoup dans le temps total d'exécution, ce qui ne ressent moins sur de gros calcul, mais c'est toujours un facteur 3 dans notre cas, ce qui est bien pour illustrer le propos.

On pourrait aussi tout initialiser et tout calculer dans le même appelle à std::transform , ce qui supprimerait les tableaux tabX et tabY. Même si ce serait un peu exessid pour notre exemple, c'est tout à fait envisageable dans le cadre de calculs completement indépendants, notamment pour de la simulation de particules.