Sehr Genaue Prozess Zeit



  • Hi,
    Ich benutze zur zeit clock()/CLOCKS_PER_SEC um die dauer einen Prozesses in Sekunden herraus zu bekommen, doch das scheint mir nur bis zu 3 dezimal stellen zu liefern, was natürlich für meinen verwendungs zweck vieeeel zu wenig ist. 😃

    ➡ Meine Frage:

    Giebt es eine Möglichkeit die dauer eines Prozesses noch genauer auszugeben? So bis zu 6-7 Dezimal stellen würden vieleicht schon reichen.

    Danke 🙂



  • Also ich verwende die Funktion timeGetTime() liefert die Systemzeit in Millisekunden

    Header: Mmsystem.h Windows.h
    Library: Winmm.lib

    also ich wüßte nicht dass es was genaueres gibt aber wer weiß?





  • @Hepi, das ist nicht das was ich suche. Am endefekt will ich wissen wie lang ergebraucht hat etwas auszurechnen. also z.b. so:

    timealt=ZEITDESPROZESSES;
    x=1+1;
    timeneu=ZEITDESPROZESSES;
    
    timedef=timeneu-timealt;
    printf ("Es hat %f sekunden gedauert das auszurechnen", timedef);
    

    Das ist natürlich nur ein stark vereinfachtes beispiel, aber der zweck wo für ichs brauche sollte so klar sein.



  • H@ckepeter schrieb:

    @Hepi, das ist nicht das was ich suche. Am endefekt will ich wissen wie lang ergebraucht hat etwas auszurechnen. also z.b. so:

    timealt=ZEITDESPROZESSES;
    x=1+1;
    timeneu=ZEITDESPROZESSES;
    
    timedef=timeneu-timealt;
    printf ("Es hat %f sekunden gedauert das auszurechnen", timedef);
    

    Das ist natürlich nur ein stark vereinfachtes beispiel, aber der zweck wo für ichs brauche sollte so klar sein.

    Falls dir das Programm 0 Millisekunden liefert (und das wird es tun, sofern dein PC nicht sehr alt ist), kannst du ja x=1+1; tausend mal (oder mehr falls nötig) ausführen und dann die Zeit / die Anzahl wie oft du die Operation durchgeführt hast rechnen, dann hast du ca. die benötigte Zeit.



  • @bb-generation
    Das ist ne sehr gute idee! Der Nachteil ist das ich das Programm auch auf anderen rechnern nutzen werde, und an freunde weiter geben werde. Und ich kann ja net fuer alle die werte eingeben 😕 Es sei den das Programm legt beim erstn start eine Datei an die auf das System zu geschnitten ist, dann würde das gehen. 🙄 mmm
    Es muss aber doch irgend was geben. z.b. auf der seite: http://www.mathepower.com/sincostan.php steht nach einer Rechnung auch die Benötigte Zeit, allso muss es irgend was geben. Ok die Programmier Sprache ist warscheinlich nicht C aber da wird es sicher doch auch was in C geben. Oder?



  • H@ckepeter:
    QueryPerformanceFrequency () und QueryPerformanceCounter () können so verwendet werden, wie Du es willst. Mit etwas Umrechnung hast Du dann auf die Mikrosekunde genau die verbrauchte Zeit. Darin stecken aber auch die Zeiten für den eigenen Aufruf und die Berechnung der Zeiten.

    Blackbird


Anmelden zum Antworten