Archive

Posts Tagged ‘time’

there are time(s) . . .

March 31st, 2011 2 comments

Stefan ist bash Nutzer, ich auch . . . und wir sind beide unabhängig voneinander in die selbe Falle getappt. Wir wollten die Ausgabe von “time” in eine Datei schreiben, dabei hat der naive Anstaz mit Streams umleiten nicht auf Anhieb funktioniert. Eigentlich ganz einfach, die manpage sagt “-o” . . . logisch. Nur tut es dann nicht – WTF? Stefan hats fluchend mit googlen und Foren lesen pobiert, ich hab durch Zufall in der manpage den passenden Hinweis gefunden:

Users of the bash shell need to use an explicit path in order to run the external time command and not the shell builtin variant.

Die bash bringt also ihr eigenes “time” mit das die Funktionalität “-o” nicht bietet . . .
Das Ende der Geschichte:

/usr/bin/time -o /tmp/time.log -p sleep 1

Categories: bashism Tags:

time drift

January 7th, 2010 No comments

Zwei Uhren gehen nie genau gleich. Schlimmer noch, sie gehen noch nicht einmal gleich schnell. Auf Clustern ist das unter Umständen besonders störend. Analysiert man zum Beispiel Programme kann es vorkommen das Nachrichten angezeigt werden die angeblich in der Zukunft losgeschickt worden sind. Die Vorlesung “Leistungsanalyse von Rechnersystemen” an der TU Dresden beleuchtet unter anderem dieses Thema.

Dieses Verhalten kann man natürlich auch messen. Auf diesem Bild wurde ein Knoten in einem Cluster als Referenzzeitgeber benutzt, zwei weitere Knoten erhalten jeden Messpunkt eine MPI_Barrier() Anweisung und führen dann eine Zeitmessung aus. Die zwei Kurven zeigen wie weit sich jeweils ein Knoten vom Referenzsystem entfernt hat, also wie viel schneller oder langsamer die Uhr auf den Knoten bzw. auf dem Referenzsystem gelaufen ist.

Categories: hpc Tags: , , , ,

It’s about time

June 17th, 2009 1 comment

The tiny tool time everybody should know, measures execution time of a given command. For example:

time echo "test"

prints time information to the console. But what if you want to collect these statistics in a file? Linux man page say “-o FILE” is the way to do so. This will look like

time  -o file.log echo "test"

This FAILS not only on my machine with the error message “bash -o: unknown command” or equal. The key is to give the full path:

/usr/bin/time -o file.log echo "test"

The problem is, that “time” is used for different things. This leads to another cute tool called type. type gives information about the kind of a command.

type -a time
 
time is a shell keyword
time is /usr/bin/time

As you can see “time” not only means the command. If somebody knows more about the “Why the hell is this so?”, feel free to post 😀

Categories: bashism, linux, software Tags: , , , ,