Nanosekunden Profiler für linux
-
Hallo zusammen,
kennt ihr einen Nanosekunden Profiler für linux ?
Hinweis:
Es geht nicht darum das die Nanosekunde tatsächlich mit der Echtzeit übereinstimmt, sondern dass die Relationen der Aussagen stimmen.
d.h. das können auch 'ticks' in beliebiger Einheit sein mit einer
Auflösung deutlich genauer als µs.Vielen Dank für eure Mühe
Gruß Frank
-
Was soll ein "Nanosekunden Profiler" sein?
Profile für Linux wären zB gprof, Intel vTune oder AMD CodeAnalyst.
-
Hallo Rüdiger,
danke schon mal für deine Antwort.
Was soll ein "Nanosekunden Profiler" sein?
Ich meine damit einen Profiler,
der im Nanosekunden Bereich Ausführungszeiten auf Funktionsebene ermittelt.Gruß Frank
-
Auf dieser Ebene kann man noch sinnvolle Aussagen treffen? Wie spielen cache misses da mit rein, pipelining oder Sprungvorhersage?
Wofuer brauchst du das?
-
Hallo knivil
Auf dieser Ebene kann man noch sinnvolle Aussagen treffen?
Im Mittel schon.
Wie spielen cache misses da mit rein, pipelining oder Sprungvorhersage?
stark.
Wofuer brauchst du das?
Ich habe "lowlevel" Funktionen die extrem häufig z.B. 2000000 und öfter
aufgerufen werden und schneller als eine µs sind.
Ein µs Profiler zeigt mir dann keine Gesamtzeit mehr an.Gruß Frank
-
Ich gehe mal davon aus, dass du dein Programm optimieren willst. Dann weisst du ja schon alles ueber deine Funktionen. Von der Geschwindigkeit kann man die wohl kaum Optimieren. Aber man kann die Anzahl der Aufrufe zaehlen bzw. zaehlen lassen. Das sollte jeder Profiler unterstuetzen. Ansonsten muss man sich selbst etwas basteln. Z.B. mit rdtsc: http://tldp.org/HOWTO/IO-Port-Programming-4.html .
-
Danke Knivil,
Mein bisheriger Profiler zählt für bestimmte Funktionen
nur noch die Anzahl Aufrufe.Von der Geschwindigkeit kann man die wohl kaum Optimieren
Ein bisschen geht fast immer noch ...
Das geht hierbei halt in die Klasse:
Funktion overhead vermeiden temporäre Variablen/Kopien sparen,
if's vermeiden, warscheinliche if's zuerst prüfen, ...Gut, die Funktionen kenne ich aber ich weiss nun
nicht (mehr) ihren zeitlichen Einfluss auf die Gesamtzeit und kann daher nur schwer bis garnicht abschätzen wieviel es bringt die Dinger anzufassen.
Zumal das Fehler Risiko aufgrund der Aufrufhäufigkeit hoch ist.Ich würde halt vorher gerne Wissen ob es sich lohnt,
wie das alles in Relation zu Gesamtzeit steht ...Gruß Frank
-
Hallo zusammen,
"Intel vTune" scheint mir das zu leisten was ich mir vorstelle.
Hat jemand von euch Erfahrungen damit ?
Danke Gruß Frank
-
Bitte keine Metafragen.
Ja, ist sehr brauchbar.
-
Hallo nman,
Was meinst du mit "Metafragen" ?
Hast du schon mit dem Programm vTune gearbeitet ?
Wie genau ist es, insbesondere bei Funktionen,
mit weing Code (ca. 10 - 20 Zeilen pure c-code)
die häufig aufgerufen werden, z.B. 2000000 mal.Was kann das Progamm in solchen Fällen anzeigen ?
Danke Gruß Frank
-
-
Geht es auch etwas konkreter ?
wenn nicht kanns ich nichts ändern ...Gruß Frank
-
Frank Erdorf schrieb:
Hallo zusammen,
kennt ihr einen Nanosekunden Profiler für linux ?Ja. Wir kennen so einen.
Frank Erdorf schrieb:
Hat jemand von euch Erfahrungen damit ?
Ja, jemand von uns hat Erfahrungen damit.
Frank Erdorf schrieb:
Geht es auch etwas konkreter ?
Ja, es geht sogar konkreter.
Um deine Frage sinnvoll zu beantworten, muß man eine ganz andere Frage beantworten. Wenn ich eine ganze Nacht durchprogrammiert habe, ist mein Hirn manchmal nicht mehr darauf eingestellt, herauszufinden, was die eigentliche Frage ist.
Du könntest außerdem mal an deinem Plenken arbeiten.