Mesurer le temps d'exécution d'une fonction en C++

Je veux savoir combien de temps une certaine fonction dans mon programme C++ pour exécuter sur Linux. Par la suite, je veux faire une comparaison de la vitesse . J'ai vu plusieurs fois en fonction, mais a terminé avec cela à partir de boost. Chrono:

process_user_cpu_clock, captures user-CPU time spent by the current process

Maintenant, je ne suis pas clair si j'utilise la fonction ci-dessus, aurai-je le seul temps qui CPU passé sur cette fonction?

Deuxièmement, je ne pouvais pas trouver un exemple d'utilisation de la fonction ci-dessus. Quelqu'un peut-il m'aider comment faire pour utiliser la fonction ci-dessus?

P. S: pour l'instant , je suis en utilisant std::chrono::system_clock::now() obtenir le temps en secondes, mais cela me donne des résultats différents en raison des différentes charge CPU à chaque fois.

  • Pour Linux utilisation: clock_gettime.. gcc définit d'autres horloges que: typedef system_clock steady_clock; typedef system_clock high_resolution_clock; sur Windows, utilisez QueryPerformanceCounter.
  • N'est-ce pas la question d'un duplicata de ce one ou de faire les scénarios d'apporter des solutions différentes?
  • J'ai deux implémentations d'une fonction et que vous souhaitez trouver ce qui fonctionne mieux.
InformationsquelleAutor Xara | 2014-03-13