Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Merenje vremena potrebno funkciji

[es] :: C/C++ programiranje :: C/C++ za početnike :: Merenje vremena potrebno funkciji

[ Pregleda: 1282 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

onako

Član broj: 256314
Poruke: 75
*.dynamic.isp.telekom.rs.



Profil

icon Merenje vremena potrebno funkciji04.07.2011. u 10:37 - pre 156 meseci
Potrebno je izmeriti vreme koje odredjena funkcija uzima. Probao sam:
Code:

            clock_t start, finish;
            start=clock();
            // funkcija
            finish=clock();
        double myTime=(double)((finish-start)/(CLOCKS_PER_SEC));

ali vreme koje vraca je cesto 0 sec. Postoji li funkcija sa vrecom
granularnoscu (npr 0.3 sec; milisekunde, mikrosekunde)?
Korisitim ubuntu i gcc.
 
Odgovor na temu

X Files
Vladimir Stefanovic
Pozarevac

SuperModerator
Član broj: 15100
Poruke: 4902
*.3gnet.mts.telekom.rs.

Jabber: xfiles@elitesecurity.org


+638 Profil

icon Re: Merenje vremena potrebno funkciji04.07.2011. u 10:46 - pre 156 meseci
Pretraži ovaj forum (a i šire) po ključnim rečima:
QueryPerformanceFrequency
QueryPerformanceCounter


To je jedno od rešenja.
 
Odgovor na temu

Nedeljko
Nedeljko Stefanović

Član broj: 314
Poruke: 8632
89.216.32.*



+2790 Profil

icon Re: Merenje vremena potrebno funkciji04.07.2011. u 11:04 - pre 156 meseci
Budući da u svom kodu koristiš celobrojno delenje, nije čudno što ne možeš da izmeriš vreme kraće od sekunde. Probaj sa konverzijom konstante CLOCKS?PER?SEC u double.

Code:
#include <cstdlib>
#include <ctime>
#include <iostream>

using namespace std;

int main() {
    cout << "Clock per second: " << CLOCKS_PER_SEC << endl;
    clock_t start = clock(), now;

    do {
        now = clock();
    } while (now == start);

    cout << "Measurement precision: " << (now - start)/(double)CLOCKS_PER_SEC << "s" << endl;

    return EXIT_SUCCESS;
}


E, sad, od uglavnom prenosivih stvari možeš koristiti još i ftime, a na GNU/Linux sistemima i getrusage.
Nije bitno koji su zaključci izvučeni, već kako se do njih došlo.
 
Odgovor na temu

[es] :: C/C++ programiranje :: C/C++ za početnike :: Merenje vremena potrebno funkciji

[ Pregleda: 1282 | Odgovora: 2 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.