5.4.1.4 : Utilisation



Pour lancer notre programme depuis le dossier build :

./Program/GrayScottReaction/IntrinsicsLinkBlock/intrinsics_link_block_gray_scott -n 1000 -r 1080 -c 1920 -e 34


Ce programme calculera 1000 images en 1920\times 1080 (donc full-hd) avec 34 pas de calcul entre chaque image.

Il calculera donc 34\,000 images et en sauvegardera une sur 34.

Pour pourvoir en tirer des conclusion, il est préférable d'évaluer son temps d'exécution (par exemple avec la commande bash time) :

time ./Program/GrayScottReaction/IntrinsicsLinkBlock/intrinsics_link_block_gray_scott -n 1000 -r 1080 -c 1920 -e 34
real	9m49,551s
user	9m25,187s
sys	0m23,462s


Ouf, on peut dire que c'est rapide. Cela revient à 0.017 seconde par image Nous allons quand même faire un petit résumé de la situation :

  • L'implémentation naïve prend : 2h 43min 30s
  • L'implémentation en fonctions intrinsèques prend : 59min 21s
  • L'implémentation en fonction intrinsèques avec des block liés prend : 9min 49s


Note : Il est important de souligner à ce stade qu'il n'y a pas d'arnaque. Notre programme en fonctions intrinsèques avec blocs liés noteCe nom est bien trop long, je suis d'accord. est bien séquentiel (on utilise bien std::execution::seq). Et si vous surveillez votre moniteur système, vous constaterez que le programme utilise bien un seul coeur.