Forum » Programiranje » [c++] merjenje časa izvajanja dela kode
[c++] merjenje časa izvajanja dela kode
gtu ::
Pozdravljeni,
zanima me kateri je pravi način za merjenje časa izvajanje dela programske kode v C++.
Na spletu sem našel nekaj načinov, ampak ne vem če dajo pravilne rezulate.
Prvi način:
http://www.cplusplus.com/reference/ctim...
Drugi način:
http://stackoverflow.com/questions/2238...
http://www.cplusplus.com/reference/chro...
Skrbi me, da tole šteje tudi čas, ki ga porabljajo drugi programi, med katerimi preklaplja OS.
Je ta skrb odveč ali naj to pač vzamem v zakup in med "merjenjem" probam pustiti vse drugo pri miru?
Hvala in lp
zanima me kateri je pravi način za merjenje časa izvajanje dela programske kode v C++.
Na spletu sem našel nekaj načinov, ampak ne vem če dajo pravilne rezulate.
Prvi način:
http://www.cplusplus.com/reference/ctim...
t = clock(); function(); t = clock() - t; elapsed = ((float)t)/CLOCKS_PER_SEC);
Drugi način:
http://stackoverflow.com/questions/2238...
http://www.cplusplus.com/reference/chro...
high_resolution_clock::time_point t1 = high_resolution_clock::now(); function(); high_resolution_clock::time_point t2 = high_resolution_clock::now(); auto duration = std::chrono::duration_cast<std::chrono::microseconds>( t2 - t1 ).count();
Skrbi me, da tole šteje tudi čas, ki ga porabljajo drugi programi, med katerimi preklaplja OS.
Je ta skrb odveč ali naj to pač vzamem v zakup in med "merjenjem" probam pustiti vse drugo pri miru?
Hvala in lp
- spremenil: gtu ()
gtu ::
Mogoče veš kaj pride v poštev za CodeBlocks. To bi rad izvajal na linuxu, ubunut 14.04, ARM
morda tole: https://sourceware.org/binutils/docs/gp... ?
morda tole: https://sourceware.org/binutils/docs/gp... ?
gtu ::
win64 ::
Funkcija se prehitro zažene. Meri recimo 1000 ponovitev(daš funkcijo v for zanko), pa vzemi povprečje.
Normalno pa je, da si deliš procesor z drugimi programi, tega ne boš preprečil. (no lahko nastaviš scheduler na batch)
Normalno pa je, da si deliš procesor z drugimi programi, tega ne boš preprečil. (no lahko nastaviš scheduler na batch)
Zgodovina sprememb…
- spremenil: win64 ()
win64 ::
Zdaj odvisno kaj meriš pa koliko ti je pomembna natančnost.
Načeloma pa bo delalo tudi s prvim načinom.
Načeloma pa bo delalo tudi s prvim načinom.
gtu ::
Tudi ko sem dal funkcijo v zanko (10000 iteracij) mi ta profiler še vedno daje kar ene številke. Preračun je trajal cca 30sekund, a nekih pametnih rezultatov ni prikazalo.
Primerjal bi pa rad čas izvajanja iste funkcije na cpu in gpu(cuda).
Primerjal bi pa rad čas izvajanja iste funkcije na cpu in gpu(cuda).
Vredno ogleda ...
Tema | Ogledi | Zadnje sporočilo | |
---|---|---|---|
Tema | Ogledi | Zadnje sporočilo | |
» | Kako zaznati in izpisati več znakov v stringu?Oddelek: Programiranje | 1576 (1400) | Ciklamen |
» | c++ pretvorba malih črk v velike in obratnoOddelek: Programiranje | 993 (782) | cosa nostra |
» | [C++]Polje neznane velikostOddelek: Programiranje | 1099 (992) | Senitel |
» | [C++] Obdelovanje vhodnega besedilaOddelek: Programiranje | 848 (772) | technolog |
» | C++ statistikaOddelek: Programiranje | 1505 (1178) | hexor |