Voilà je me demandais, par simple curiosité, s'il existe un moyen, un outil ou une fonction de connaitre le coût computationnel d'un programme, d'une fonction ou d'un code quoi. J'entends par coût computationnel son utilisation CPU et mémoire.
À un niveau assez simple par exemple, et je sais bien que la différence doit être extrêmement minime, mais qu'est-ce qui est le plus gourmand, un puts() ou un printf() ? Comment le savoir ?
Je ne sais pas s'il existe d'outil où même si m'a question à un quelconque sens puisque les réponses peuvent varier d'une architecture à une autre... Bref, la réponse sera alors peut être surement purement mathématique comme le calcule de complexité des algorithmes de tri.
Il existe des outils pour faire cela, ils dépendent de ton compilateur. On parle de profilerou en français profileur de performance. A utiliser sur du code en release car la couche de debug est la plus grande consommatrice de CPU (release est de 1,5 à 20 fois plus rapide.) Par analyse du code, c'est par contre quasi-impossible (une simple lecture mémoire prend de 1 à des centaines de cycles processeur, une multiplication de 2 à 4 cycles, cela dépend trop du contexte.)
Sinon printf() est moins optimum que puts() car il a une analyse à effectuer, il perd donc des dizaines de nanosecondes par appel.
Merci Ra'Jiska et Dalfab pour ces super pistes, je vais regarder tout ça avec attention !
Coût computationnel
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
En recherche d'emploi.