View Full Version : Tempo de execução de uma função


Ace-_Ventura
31-01-2008, 02:47
Sabem de algum programa que nos permita ver quanto tempo gasta cada função de 1 programa? Tanto faz se é windows ou linux, apesar de ser preferivel em windows.

slack_guy
31-01-2008, 02:50
Em que linguagem de programação?

Ace-_Ventura
31-01-2008, 03:26
falha estúpida :p. Em C

HavoC
31-01-2008, 10:45
Em windows:


#include <Windows.h>
...

DWORD timeExec = timeGetTime();

funcao();

_tprintf(TEXT("\n-> Tempo de execução: %d ms\n\n"), timeGetTime() - timeExec);


Se não reconhecer a função, tens de incluir também a library Winmm.lib. Por exemplo, no Visual Studio (Project-> Properties… -> Configuration Properties…-> Linker ->
Input -> Additional Dependencies -> add "winmm.lib")

Ace-_Ventura
31-01-2008, 12:22
não é prático fazer isso porque isto tem centenas de funções (mod para quake 3 engine). :(

AragTey
31-01-2008, 15:42
função não sei, mas podes por exemplo usar time_t para veres o tempo antes da funcao e dps da funcao, subtrais os mesmo e tens o tempo que passou, depois é so escreveres para um ficheiro.

Black Wolf
31-01-2008, 15:56
Uma vez que não me parece que queiras implementar algo no próprio programa como dizes que é um mod e se queres só mesmo testar a eficácia do teu programa/funções o Gprof faz-te isso:

http://www.cs.utah.edu/dept/old/texinfo/as/gprof_toc.html

Tive de o usar num trabalho da uni juntamente com o Oprofile já não me recordo dos comandos mas não é complicado ;)

Para linux, desconheço se há algo do género para windows...

Ace-_Ventura
31-01-2008, 16:11
ha tks, serve perfeitamente