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. ___
3
Antworten

Was genau misst C ++ - Profiling (google cpu perf tools)?

Ich versuche mit Google Perf Tools anzufangen, um einige CPU-intensive Anwendungen zu profilieren. Es ist eine statistische Berechnung, die jeden Schritt mit 'Ofstream' in eine Datei ablegt. Ich bin kein C ++ - Experte, deshalb habe ich Probleme...
16.06.2009, 18:52
1
Antwort

Was bedeutet die Kategorie "Sonstige" im Chrome Timeline-Profiling-Tool?

Ich versuche zu verstehen, wie die Geschwindigkeit einer D3.js-Anwendung (eine interaktive Visualisierung von Daten) durch die Analyse der Schnittfensterdaten im Chrome Developer Tool verbessert werden kann. Ich ziehe die Datenbalken herum, w...
06.04.2016, 19:27
2
Antworten

iOS und Objective-C: Die meiste CPU-Zeit wird in [NSObject release] und [NSObject retain] verbracht, aber die Klassenmethode führt keine Speicheroperationen aus

Eine Bildverarbeitungsanwendung läuft schnell auf dem Simulator, ist aber wirklich langsam auf einem echten Gerät (iPhone 4GS). Beim Ausführen der Anwendung unter "Instrumente" sehe ich den folgenden Aufrufbaum: Beachten Sie, dass di...
18.03.2013, 04:17
4
Antworten

Profilierungsratschläge - versuchen, Probleme beim Laden von Websites aufzuzeigen

Ich habe eine Wordpress e-comm übernommen (obwohl diese Frage mehr über die Profilerstellung allgemein ist), die ein Leistungsproblem hat, das anscheinend nur einen bestimmten Bereich im Admin-Bereich des CMS betrifft. Beim Versuch, einen bestim...
29.01.2012, 19:20
2
Antworten

Java-JAR-Speicherauslastung VS-Klassenspeicherauslastung

Ich habe kürzlich meine große Java-Anwendung so geändert, dass sie in JARs anstelle von einzelnen Klassendateien geliefert wird. Ich habe 405 JARS, die 5000 Klassendateien enthalten. Mein Problem ist, dass, wenn ich meine Programme als JARs (Kla...
26.06.2015, 17:54
2
Antworten

Die Verarbeitung von Haskell-Batchdateien verbessert das Speicherprofil nicht

Ich habe einen einfachen Algorithmus zu implementieren: Vergleichen Sie jede Zeile mit jeder anderen Zeile. Jede Zeile enthält eine Zahl und die Vergleichsfunktion ist die Entfernung. Die Summe aller Entfernungen ist das Endergebnis. Dies kan...
09.05.2011, 15:09
1
Antwort

visualvm vs JProbe vs JProfiler [geschlossen]

Es gibt mehrere Tools für die CPU- und Speicherprofilerstellung, darunter ist jvisualvm ziemlich neu. Gibt es Vergleiche / Benchmarks zwischen diesen Tools? Welches Werkzeug ist besser als andere?     
13.05.2011, 05:22
4
Antworten

Finde das cpu-hogging Plugin in Multithreading-Python

Ich habe ein in Python geschriebenes System, das große Datenmengen mit Hilfe von Plugins verarbeitet, die von verschiedenen Entwicklern mit unterschiedlichem Erfahrungsniveau geschrieben wurden. Im Grunde startet die Anwendung mehrere Arbeits...
23.06.2009, 08:57
1
Antwort

VS2010 Performance Profiling Problem (PRF0017: Server kann nicht gestartet werden ..)

Ich habe 2 Websites, die meinen lokalen IIS 7.5 ausführen Eins ist ein öffentliches Portal und das andere ist eine Service-Website, die das Anwendungsende des öffentlichen Portals ist Es gibt kein Problem beim Profilieren des öffentlichen...
11.05.2010, 10:13
2
Antworten

Zuverlässigkeit des Xcode Instrument-Zerlegezeitprofils

Ich habe meinen Code mit dem Zeitprofiler von Instrument profiliert und in die Disassembly gezoomt, hier ist ein Ausschnitt seiner Ergebnisse: Ich würde nicht erwarten, dass eine Anweisung mov 23,3% der Zeit benötigt, während eine An...
21.01.2018, 16:58