toxic_cortex Posted August 16, 2005 Share Posted August 16, 2005 je me suit lencer dans la programation opengl et je voudrait savoir combien de temps le programe met pour s'executer alor j'ai eseiller avec times() mais il me sore plusieur foix le même chifre car time n'est pas asser presit il existe une fonction plus presise?? Link to comment Share on other sites More sharing options...
Irgoff Posted August 23, 2005 Share Posted August 23, 2005 Tu peux essayer clock() : #include <time.h> ... clock_t start = clock(); //...traitement du programme... double duration = (double)( ( clock() - start )/ CLOCKS_PER_SEC ); Link to comment Share on other sites More sharing options...
Sentinel Posted August 25, 2005 Share Posted August 25, 2005 Tu peux aussi essayer le Larousse illustré, pour que tes messages soient enfin compréhensibles au commun des mortels. Link to comment Share on other sites More sharing options...
keneda212 Posted August 25, 2005 Share Posted August 25, 2005 c'est dur d'avoir une tres bonne precision apres avoir fait quelques tests, par exemple un time, puis un sleep, puis un time et tu note le temps qu'il s'est ecoulé entre les deux time. ce n'est jamais le temps demandé mais beaucoup plus. pourquoi ? parce que le systeme d'exploitation partage son temps cpu entre tous les processus qui le demande donc il te sera difficile d'avoir des commandes plus precise. bref... j'ai peut etre fait un HS mais vu que j'ai rien compris a ton post Link to comment Share on other sites More sharing options...
Fafhrdius Posted August 25, 2005 Share Posted August 25, 2005 Ca s'arrêtes pas à la miliseconde d'ailleurs ? m'enfin j'ai toujours cru ça moi Link to comment Share on other sites More sharing options...
woodystable Posted August 28, 2005 Share Posted August 28, 2005 time, c'est en secondes, comme le time de bash. Si mes souvenirs sont bons, tu as des fonctions comme nanotime et microtime ou utime (je ne sais plus très bien) Ils sont dans la library libc6 il me semble, tu devrais pouvoir trouver. Link to comment Share on other sites More sharing options...
houmiak Posted August 29, 2005 Share Posted August 29, 2005 Salut, pour mes code en directX, j'utilise la fonction BOOL QueryPerformanceCounter( LARGE_INTEGER *lpPerformanceCount ); Regarde sur la MSDN de microsoft pour l'utiliser correctement, mais c'est ultra précis (ca compte les cycles d'horloge CPU). voilou Link to comment Share on other sites More sharing options...
lorinc Posted August 29, 2005 Share Posted August 29, 2005 c'est exactement ce que fait Irgoff... Link to comment Share on other sites More sharing options...
houmiak Posted August 29, 2005 Share Posted August 29, 2005 ba voila, deux réponses pour le prix d'une Link to comment Share on other sites More sharing options...
Matmout Posted August 29, 2005 Share Posted August 29, 2005 Sauf quand tu as un step-cpu comme le PIV (HT), certaines fonctions risqueront de te donner des résultats faussés, puisque la fréquence et donc la vitesse du processeur n'est pas constante... Ou alors il faut récupérer la résolution du timer lors du calcul du temps et faire ses p'tits calculs magouilles... Enfin tout ca c'est surtout important pour faire de l'OpenGL dépendant du temps et non du framerate, si c'est juste pour te donner une idée du temps de lancement, une fonction toute bête sera suffisante... Sinon c'est vrai que la proposition de Sentinel est valable Link to comment Share on other sites More sharing options...
Recommended Posts
Archived
This topic is now archived and is closed to further replies.