Strona 1 z 1

Czas wykonywania programu

: 17 maja 2006, o 21:06
autor: kurak38
Znacie może jakiś program, który mierzy czas wykonywania programu z dokładnością większą niz 1 sec. O ile się nie myle to w c++ można użyć funkcji time() ale ona chyba mierzy z dokładnością do 1 sec, a mi chodzi o większą.

Jak znacie coś albo macie to byłbym wdzięczny.

pozdrawiam:)

Czas wykonywania programu

: 17 maja 2006, o 23:20
autor: arigo
zle kombinujesz
ten czas ktory Ci zostanie podany to czas systemowy a nie danego procesu. jednak jesli chcesz dalej podazac ta droga to mozesz sie zapoznac z funkcja clock() z time.h (zgodna ze standardem ANSI C)

w linuxie jest proste polecenie time ktore sluzy do tego

----------------------

w linuxie jest jeszcze cos takiego w sys/times.h

Kod: Zaznacz cały

(...)
  clock_t times(struct tms *buf);
  The times() function stores the current process times in the struct tms
       that buf points to.  The struct tms is as defined in <sys/times.h>:

       struct tms {
              clock_t tms_utime;  /* user time */
              clock_t tms_stime;  /* system time */
              clock_t tms_cutime; /* user time of dead children */
              clock_t tms_cstime; /* system time of dead children */
       };
(...)

Czas wykonywania programu

: 17 maja 2006, o 23:27
autor: kurak38
Ten time() to chyba mierzy od liczbę sec od 1970 roku to można zrobić różnicę na początku programu z tą na końcu, ale ta dokładność....

Słyszałem że na stronie oi jest jakiś program, ale nie mogę znaleźć;/

Czas wykonywania programu

: 18 maja 2006, o 09:15
autor: arigo
kurak38 pisze:Ten time() to
nie napisalem ani slowa o time()

Czas wykonywania programu

: 18 maja 2006, o 21:45
autor: kurak38
Już znalazłem. Informuje też że jest na stronie program do mierzenia czasu, jeślui ktoś jest zainteresowany. W zakładce Przydatne zasoby->oi13-day0-dlazaw-dos.zip. Po rozpakowaniu w katalogu bin jest program "Timer", którego należy odpalić z dosa. Wchodzimy pod dosem (np przez cmd) w katalog z "timerem" i wpisujemy komende: timer.exe nazwa_programu.exe i on odpala program mierząc mu czas do zakończenia. Czas jest zapisywany do pliku timer.out w tym samym katalogu. Nazwa_programu- to zanwa programu który testujemy:). Mierzy on czas z dokładnością do 0.01s. Myśle że komuś się to przyda.
pozdrawiam:D

Czas wykonywania programu

: 18 maja 2006, o 22:17
autor: amdfanatyk
na windows pamietam queryFrequencyCounter i queryPerformaceCounter, ktore operuja na posiadajacym duza rozdzielczosc timerze procesora i nie ma dokladniejszych, ze slabszych pamietam getTicksCount chyba tak sie to nazywalo... dawno przestalem sie bawic z vc++ i mfc.