Zeitberechnung



  • Hallo,

    mein Problem sieht folgendermaßen aus.
    Ich habe eine Funktion. Von dieser Funktion möchte ich wissen wie lange diese benötigt bis sie abgearbeitet ist. Dafü muss ich sicherlich einen Timer nutzen.
    Aber wie realisiere ich diesen?

    Kann mir jemand weiterhelfen?

    Danke



  • Wie soll denn die Auflösung für die Zeitmessung aussehen?
    Für grobe Sachen kannst du clock() verwenden. Wenn's genauer sein soll, dann musst du auf was system-spezifisches zurückgreifen.



  • sollte schon in den m-μs Bereich gehen.



  • danny312 schrieb:

    sollte schon in den m-μs Bereich gehen.

    Dann solltest du dich nach speziellen Bibliotheken im Web umschauen.



  • struct timeval start, stop;
    gettimeofday(&start, NULL);
    // lalala
    gettimeofday(&stop, NULL);
    stop.tv_sec -= start.tv_sec;
    stop.tv_usec -= start.tv_usec;
    


  • fuehr die funktion ne million mal aus. wenn das 5 sekunden braucht, dann braucht eine ausfuehrung 5μs



  • c.rackwitz schrieb:

    fuehr die funktion ne million mal aus. wenn das 5 sekunden braucht, dann braucht eine ausfuehrung 5μs

    Das geht nur, wenn es eine Funktion ist die nichts aendert bzw von diesen Aenderungen nicht betroffen ist. Wenns ne Funktion ist die einen best. Datensatz in einer DB loescht dann muesstest den auch immer wieder anlegen. Also nur bedingt eine Loesung.



  • wenn verfügbar könnte man auch im Register des Parallelports beliebige Bits mit outp(Adresse,Bitmuster) setzen und dann die Spannung an den Parallelport-Pins mit nem Oszi auswerten, wenn man eins hat, vorher noch die Umschaltdauer des Registers ermitteln mit aufeinenderfolgenden Bit-Wechseln
    damit damit hab ich im µ-Sekunden-Bereich gemessen


Anmelden zum Antworten