Exakte Laufzeit eines Programms messen

  1. Chack

    Chack Thread Starter MacUser Mitglied

    Mitglied seit:
    14.05.2004
    Beiträge:
    68
    Zustimmungen:
    0
    Hallo,

    Ich schreibe an einem Projekt für die Uni, habe den Dijkstra Algorithmus in Java und Ocaml implementiert. Ziel des Projekts ist es die Laufzeit des gleichen Algorithmus in verschieden Sprachen zu messen/vergleichen.

    Gibt es ein Tool mit dem man die Laufzeit des Algorithmus messen kann? Vielleicht gibt es ja sogar einen Unix befehl? Top wäre natürlich wenn ihr sowas auch noch für Windows kennt, damit man noch Cross-Platform vergleiche machen kann.

    Noch ne Frage für die Experten:
    Damit beide Algorithmen auf den gleichen Daten arbeiten und nicht umständlich hin und her kopiert werdne muss, wäre es am besten, wenn die die Daten aus einer Datei auslesen. Allerdings soll die Zeit, die zum auslesen der Daten gebraucht wurde nicht die Testdaten verfälschen. Gibt es irgendwie eine möglichkeit die Laufzeit verschiedener Unterschritte des Programms zu messen? Ich hab mir zum Beispiel gedacht das es vielleicht innerhalb von java/ocaml eine Variable gibt, die eine hochpräzise Timestamp enthält. Gibt es da sowas?
     
    Chack, 02.12.2004
    #1
  2. oneOeight

    oneOeight MacUser Mitglied

    Mitglied seit:
    23.11.2004
    Beiträge:
    48.160
    Zustimmungen:
    3.885
    der unix befehl ist "time", aber da wirst du wohl nicht dazu kommen, das laden der daten auszuschliessen...

    was wohl besser für deine zwecke wäre, ist ein profiler...
    sollte es in jeder besseren java prog umgebung gegeben...
     
    oneOeight, 02.12.2004
    #2
  3. Katana

    Katana MacUser Mitglied

    Mitglied seit:
    30.08.2004
    Beiträge:
    989
    Zustimmungen:
    0
    merke dir doch einfach im code 1x die systemzeit VOR dem algorithmus und 1x DANACH?

    ergo: ENDZEIT - STARTZEIT = DAUER ???
     
    Katana, 02.12.2004
    #3
  4. oneOeight

    oneOeight MacUser Mitglied

    Mitglied seit:
    23.11.2004
    Beiträge:
    48.160
    Zustimmungen:
    3.885
    entprechenden java code findest du übrigens hier:
    http://adorno.mi.fh-wiesbaden.de/~barth/ads/prakt/ADSTool.java

    ich weiß zwar nicht, warum informatiker immer noch mit ML derivaten gequält werden, aber den entsprechenden code dafür in ocaml musst du dir per google schon selber suchen, bzw nachgucken wie man in ocaml sich system ticks holt...
     
    oneOeight, 02.12.2004
    #4
  5. Chack

    Chack Thread Starter MacUser Mitglied

    Mitglied seit:
    14.05.2004
    Beiträge:
    68
    Zustimmungen:
    0
    hehe ich kann ml auch nicht leiden, aber es musste eine funktionale Sprache sein (kann ich generell nciht leiden, macht alles so kompliziert).

    Ich werde das mit der Systemzeit lösen, dh einmal bevor der kritische Programmteil startet Syszeit ausgeben und einmal danach. Thx für die Info :)
     
    Chack, 04.12.2004
    #5
  6. Katana

    Katana MacUser Mitglied

    Mitglied seit:
    30.08.2004
    Beiträge:
    989
    Zustimmungen:
    0
    du tust dir wahrscheinlich den größten gefallen, wenn du dir die zeiten in unixtime "merkst" ... falls es kein hochauflösender timer sein muss ...
     
    Katana, 04.12.2004
    #6
Die Seite wird geladen...
Ähnliche Themen - Exakte Laufzeit eines
  1. Scherak
    Antworten:
    2
    Aufrufe:
    210
    Scherak
    15.04.2017
  2. michael m.
    Antworten:
    3
    Aufrufe:
    516
    michael m.
    19.03.2015
  3. co2cl
    Antworten:
    1
    Aufrufe:
    1.040
    falkgottschalk
    11.10.2011
  4. balufreak
    Antworten:
    0
    Aufrufe:
    386
    balufreak
    09.03.2011
  5. MAC-Newb.
    Antworten:
    5
    Aufrufe:
    987
    der grimm
    14.05.2004