Chapter 3.3 : Lancement du programme



Si on lance notre programme, nous obtenons :

./simple_hadamard_product_best_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_best_init 
x = 0, y = 0, res = 0

real 0m0,576s user 0m0,304s sys 0m0,264s


On voit que le temps d'exécution est encore meilleur : 0.576s au lieu des 0.812s et 2.647s précédents.

C'est toujours un petit exemple, mais nous permet de contourner le fait que std::iota n'a pas de politique d'exécution. On ne peut donc pas l'appeler sur le GPU, alors que c'est possible avec std::generate . Et nous économisons une allocation mémoire, puisque nous nous passons du tableau d'index précédent (voir partie 3.