Anzeige:
Ergebnis 1 bis 6 von 6

Thema: C++ & MPI -> Zeit messen -> Idee ?

  1. #1
    Registrierter Benutzer
    Registriert seit
    24.08.2004
    Beiträge
    749

    C++ & MPI -> Zeit messen -> Idee ?

    Hallo,

    ich habe ein Programm was sequentiell läuft und das gleiche was parallel läuft. ALso 2 Implementierungen.

    Jetzt würde ich gerne messen wie schnell die Programme sind bzw. ob das parallele wirklich schneller ist.

    Das Problem: Ich kann nicht einfach in das parallele die gettimeofday funktion einbauen oder ähnliches, da hier mehrere rechner gleichzeitig arbeiten und auch gleichzeitig dasselbe programm abarbeiten. Jeder Knoten würde also seine Zeit berechnen. Gut - man könnte die Zeiten aufsummieren ABer:

    Gibt es nicht eine Möglichkeit die Zeit über ein Skript oder über einen Unix-Befehl zu messen? Oder hat jemand eine passende Idee?

  2. #2
    Registrierter Benutzer
    Registriert seit
    23.10.2005
    Beiträge
    25
    Ich habe es damals bei MPI so gemacht, dass ich gettimeofday genommen habe, direkt nach main bis vor return oder exit und die habe ich mir ausgeben lassen.

    Ich habe dann ja gesehen, dass auf irgendeinem Rechner die maximal Zeit z.b. 3 Sekunden betrug und somit habe ich auch die dauert für die parallere Verarbeitung, 3 sekunden, das maximum.

    beim sequentiellen habe ich einfach ein time vorgesetzt.

  3. #3
    Registrierter Benutzer
    Registriert seit
    24.08.2004
    Beiträge
    749
    danke Tsulga für Deine Antwort - leider verstehe ich da wohl noch was nicht ganz:

    Wenn ich in meiner main gettimeofday verwende und das Programm z.B auf 3 Knoten starte bekomme ich ja 3-mal die Zeit ausgegeben weil jeder der 3 Knoten in die main läuft.Nur welche der 3 Zeiten ist dann die korrekte?
    Oder meinst du dass du von allen gemessenen Zeiten das Maximum nimmst weil alle anderen eh in dieser zeit fertig werden?

    Bei bei angabe mehrer Knoten z.B 10 verändert sich die Zeit fast gar nicht. Wird wohl an meiner Implementierung liegen.

    Danke
    Geändert von Mat (25-07-2007 um 11:20 Uhr)

  4. #4
    Registrierter Benutzer
    Registriert seit
    23.10.2005
    Beiträge
    25
    Oder meinst du dass du von allen gemessenen Zeiten das Maximum nimmst weil alle anderen eh in dieser zeit fertig werden?
    Genau das meine ich.Ich habe im Studium auch MPI verwendet, es hat mich auch immer geärget, dass es dort keine Möglichkeit gibt eine vernünftige Zeitmessung zu machen ( zumindest ist mir keine bekannt ).

  5. #5
    Registrierter Benutzer
    Registriert seit
    24.08.2004
    Beiträge
    749
    Ok - alles klar. Danke an dieser stelle.

    ...gar nicht so einfach das MP-Interface...

  6. #6
    Registrierter Benutzer
    Registriert seit
    23.10.2005
    Beiträge
    25
    Es ist gar nicht so schwer, solange man nicht versucht den Quellcode zu verstehen, da ist gelegentlich schon ein seltsamer kommentar bei

Lesezeichen

Berechtigungen

  • Neue Themen erstellen: Nein
  • Themen beantworten: Nein
  • Anhänge hochladen: Nein
  • Beiträge bearbeiten: Nein
  •