profiling

___ answer217906 ___

Sie können Valgrind wahrscheinlich versuchen ( Ссылка ). Sie verfügen über Laufzeit- und Kompilierzeit-Profilerstellungs-Tools.

    
___ qstnhdr ___ Gibt es ein ähnliches Tool für Linux, das wie Shark unter Mac OS X funktioniert? ___ answer336149 ___

OProfile ist ein Tool, das auf Stichproben basierende Profilerstellung für Ihre Anwendung und das System durchführt ruft es macht. Dies ermöglicht es, detaillierte Informationen darüber zu sehen, wo es Zeit benötigt. Es hat keine GUI, aber es gibt mehrere Front-Ends, mit denen Sie die Informationen aus den Läufen verarbeiten können.

Ich habe es ausgiebig genutzt, sowohl für Desktop-Anwendungen als auch für Embedded-Systeme. Es braucht ein wenig Aufwand, um die Ergebnisse zu interpretieren, aber die Callgraph-Ausgabe ist hier wirklich nützlich.

    
___ answer334829 ___

Erweitere eine andere Antwort, ich benutze die "callgrind" -Option von valgrind ( Ссылка ). Dann installiere kcachegrind von KDE für eine nette GUI-Schnittstelle.

Als Tutorial für Dummies:

1) Kompilieren Sie Ihre Anwendung mit Debugging-Informationen. Es ist eine gute Idee, das Profiling mit Optimierung sowohl ein- als auch auszuschalten, mit optimierter Optimierung erhalten Sie mehr Informationen, aber es ist möglicherweise weniger genau (insbesondere winzige Funktionen werden mehr Zeit in Anspruch nehmen, als sie verdienen.

2) Führen Sie mit:

%Vor%

Dies sollte eine Datei namens "callgrind.something" erzeugen, die Sie in kcachegrind laden können.

Sie können auch sehen:

valgrind --tool = cachegrind

Hier erhalten Sie Informationen darüber, wie Ihre App mit dem Cache Ihrer CPU interagiert.

Beachten Sie, dass Valgrind und Hai zwar ähnlich aussehen, aber sehr unterschiedlich funktionieren. Wenn Sie eine App in Valgrind ausführen, läuft sie viel langsamer als normal (oft über 40 mal langsamer), aber die Ergebnisse, die Sie erhalten, sind viel genauer als die von Hai. Ich neige dazu, beide zu verwenden, damit ich so viele Informationen wie möglich erhalten kann!

    
___ qstntxt ___

Shark auf Mac OS X ist ein großartiges Tool zum Profiling einer Anwendung auf einem laufenden System. Gibt es ähnliche Tools für Linux?

OProfile sieht so aus, als könnte es sein, jemand hat es benutzt?

    
___ answer4375693 ___

Etwas spät, um diese Frage zu beantworten, aber die nächste Antwort ist Zoom . Ein Teil des Shark-Teams hat daran gearbeitet.

    
___ tag123Profiling ___ Profiling ist der Prozess zum Messen einer Anwendung oder eines Systems, indem ein Analysetool namens Profiler ausgeführt wird. Profiling-Tools können sich auf viele Aspekte konzentrieren: Aufrufzeiten und Anzahl der Funktionen, Speicherauslastung, CPU-Auslastung und Ressourcenverbrauch. ___ tag123linux ___ LINUX FRAGEN MÜSSEN PROGRAMMIEREN VERWANDT SEIN. Verwenden Sie dieses Tag nur, wenn sich Ihre Frage auf das Programmieren mit Linux-APIs oder das Linux-spezifische Verhalten bezieht, nicht nur, weil Sie Ihren Code unter Linux ausführen. Wenn Sie Linux-Unterstützung benötigen, können Sie https://unix.stackexchange.com oder https://askubuntu.com ausprobieren ___ tag123oprofile ___ OProfile ist ein Profiling-System für Systeme mit Linux 2.2, 2.4 und 2.6. Profiling läuft transparent im Hintergrund und Profildaten können jederzeit gesammelt werden. OProfile verwendet die auf Intel-, AMD- und anderen Prozessoren bereitgestellten Hardware-Leistungsindikatoren und verwendet einen zeitgeberunterbrechungsbasierten Mechanismus für CPUs ohne Leistungsindikatoren. OProfile kann das gesamte System detailliert darstellen. ___ tag123profiler ___ Ein Profiler ist ein Programmiertool, um die Leistung eines Softwareprogramms zu verfolgen und zu analysieren. ___
1
Antwort

.NET Micro-Benchmark-API [geschlossen]

Ich suche nach einer Bibliothek für das Micro-Benchmarking von Komponententests, um zu überwachen, wie Codeänderungen die Leistung im Zeitverlauf beeinflussen. Das heißt, ich möchte, dass die Bibliothek Ergebnisse z. XML um Geschichte zu bewahre...
20.06.2011, 10:55
1
Antwort

Wie profiliere ich django-Kanäle?

Mein Technologie-Stack ist Redis als Kanal-Backend, Postgresql als Datenbank, Daphne als ASGI-Server, Nginx vor einer ganzen Anwendung. Alles wird mithilfe von Docker Swarm bereitgestellt, wobei nur Redis und Database außen liegen. Ich habe unge...
26.12.2016, 12:49
0
Antworten

Wie erfolgt die Profilerstellung unter GHC 7.10.1 und cabal 1.23?

Was ist das empfohlene Verfahren für das Profiling unter GHC 7.10.1 und cabal 1.23? Die Profiling-bezogenen Fehler- und Warnmeldungen von GHC und cabal-install sind sehr inkonsistent. Versuchen Sie, eine ausführbare Datei mit Profiling ausz...
10.06.2015, 11:29
1
Antwort

Translating TypeId von GCSampledObjectAllocationHigh

Ich habe Code, der das Microsoft.Diagnostics.Tracing.TraceEvent NuGet-Paket verwendet, und ich habe den folgenden Code geschrieben: %Vor% Dies gibt mir eine Ausgabe, die ungefähr so ​​aussieht: %Vor% Was klar genug ist, ist ein Objekt...
24.08.2015, 22:15
1
Antwort

gevent Profiler für lang laufenden Code

Gibt es Profiler, die in einem Gevent-basierten Daemon verwendet werden können (Code, der für immer loopt)? Es ist kein HTTP-basierter Daemon, er wird für Back-End-Zwecke verwendet. Ich habe mir einige verschiedene potentielle Profiler für geven...
08.06.2014, 15:42
2
Antworten

Probleme beim Ausführen von Instrumenten auf dem iPad

Ich versuche, meine Anwendung mithilfe von Instrumenten auf dem Gerät selbst zu profilieren. Insbesondere versuche ich Zeitprofile zu erstellen. Leider kann ich es einfach nicht zur Arbeit bringen. Hier ist die Situation: 1) Wenn ich Instr...
16.11.2011, 13:52
9
Antworten

Testen Sie Ihren Code für Geschwindigkeit?

Ich bin ein totaler Neuling, aber ich schrieb ein kleines Programm, das an Strings in C # arbeitete, und ich bemerkte, dass der Code wesentlich schneller ausgeführt wurde, wenn ich ein paar Dinge anders machte. Es hat mich also gewundert, wie...
22.09.2008, 22:00
3
Antworten

Vergleichen von Java-Speicher-Heap-Dumps: Speicher-Profiling für Java-Desktop-Anwendung [geschlossen]

Dies ist eine spezifischere Frage, die Sie auf noch einmal nachfragen sollten . Eine korrekte Antwort für diese Frage wird auch für die vorherige Frage eine richtige Antwort erhalten (da diese noch in der Schwebe ist)! Grundsätzlich habe ich...
21.11.2009, 01:52
8
Antworten

Wie unterscheidet sich das Profiling von der Protokollierung?

Wie unterscheidet sich Profiling von Protokollierung? Wird das Profiling nur für Leistungsmessungen verwendet, um zu sehen, wie lange jede Funktion dauert? Oder bin ich dran? Wie werden Profiling-Bibliotheken normalerweise verwendet? We...
28.10.2008, 03:30
11
Antworten

Welche Ressourcen kann ich verwenden, um Profilerstellung / Optimierung zu lernen?

Ich habe gerade ein C # -Projekt geerbt, das zu langsam läuft und mit der Optimierung beginnen muss. Was ich zuerst machen wollte, ist etwas mehr über Profiling / Optimieren zu lernen, da ich es vorher nicht tun musste. Die Frage ist also, wo fa...
15.02.2009, 01:18