Was ist Profiling?

8

Ich bin neu und versuche zu lernen.

  • Was ist Profiling?
  • Was sind verschiedene kostenlose Tools zum Profiling von .NET, Java EE?
  • Kann Javascript profiliert werden?
  • Wenn ja, mit welchem ​​Werkzeug?
  • Und schließlich, wie funktionieren diese Profiler?
Ramesh 06.03.2009, 18:22
quelle

8 Antworten

11

Das Profiling misst, wie lange verschiedene Teile des Codes zum Ausführen benötigen. Javascript kann mit Firebug profiliert werden: Ссылка

    
Jeff Dickey 06.03.2009, 18:24
quelle
5

Profiling misst die Ausführungszeiten und korreliert diese mit verschiedenen Klassen / Methoden / Funktionen. (Siehe den Link, den ich der Wikipedia-Seite für einige Kommentare gegeben habe, wie Profiler arbeiten können)

    
Jason S 06.03.2009 18:23
quelle
4

Stellen Sie sich Profiler als Debugger für Ausführungsdauerfehler vor.

Profiler werden oft wie Debugger implementiert, außer dass Sie das Programm stoppen und herumstochern können. Sie lassen es einfach laufen und verfolgen, wie viel Zeit in jedem Teil des Programms verbraucht wird. Dies ist besonders nützlich, wenn Sie über etwas Code verfügen, der langsamer ausgeführt wird, als Sie zum Ausführen benötigen, da Sie genau herausfinden können, wohin die Zeit geht, und sich darauf konzentrieren, genau diesen Engpass zu beheben.

Viele Entwickler glauben, dass Sie niemals Code manuell optimieren sollten, ohne einen Profiler zu verwenden.

    
T.E.D. 06.03.2009 18:40
quelle
3

Die Art und Weise, wie Sie normalerweise Ihren Profiler verwenden würden, ist wie folgt:

  1. Starten Sie den Profiler, starten Sie Ihre Anwendung mit dem Profiler.
  2. Verwenden Sie Ihre Anwendung für einige Zeit oder nur die Funktionen in Ihrer Anwendung, die Sie als Engpässe identifiziert haben und optimieren möchten.
  3. Sobald Ihre Anwendung geschlossen wurde (oder manchmal sogar davor), kann der Profiler Ihnen eine Aufschlüsselung der Ausführungszeiten pro Funktion anzeigen. Einige erlauben Ihnen auch eine Aufschlüsselung der Ausführungszeiten pro Zeile oder Funktion innerhalb einer dieser Funktionen, so dass Sie sehen können, wo die CPU am meisten Zeit verbraucht wurde, indem Sie einen Top-Down-Ansatz verwenden.
  4. Normalerweise dauert die Ausführung einiger Funktionen in Ihrer Anwendung ungewöhnlich lange. Nachdem Sie sich Ihre Profilergebnisse angesehen haben, sollten Sie in der Lage sein, sie zu identifizieren und Leistungsprobleme zu beseitigen.
Adrian Grigore 06.03.2009 18:31
quelle
3

Hier sind einige .NET Profiler für Sie (kostenlos):

Ich bin kein großer Fan von diesen. Ich würde eines der kommerziellen Produkte empfehlen, um die besten Ergebnisse zu erzielen:

Abgesehen davon, werfen Sie einen Blick auf Blogeinträge von Brad Adams Profiler für die CLR und .NET-Anwendungsprofiler .

Ich persönlich mag dotTrace .

    
David Pokluda 06.03.2009 18:52
quelle
0

Wikipedia sagt:

  

In der Softwareentwicklung ist die Performance-Analyse, heute besser bekannt als Profiling, die Untersuchung des Verhaltens eines Programms anhand von Informationen, die während der Programmausführung gesammelt werden.

Lesen Sie hier weiter Ссылка .

Also, über JavaScript-Tool Firebug ( Ссылка ) ist eine hervorragende Option.

    
Agusti-N 07.03.2009 18:39
quelle
0

Profiling ist eine Technik zum Messen der Ausführungszeiten und Anzahl der Aufrufe von Prozeduren.

Es ist jedoch nicht der einzige oder sogar der beste Weg, Dinge zu finden, die Zeit in Ihrem Code verschwenden. Schau hier.

Für einen anderen Wikipedia-Artikel versuchen Sie Ссылка

Für eine einfache Anleitung, versuchen Sie Ссылка

    
Mike Dunlavey 07.03.2009 22:21
quelle
0

Das Profiling ist ein Maß für die Ausführungszeit auf Methodenebene (Funktionsstatistik) sowie für die Erfassung von Informationen auf Laufzeitebene wie Speicherverbrauch, Prozessor, Threads und Anzahl der Klassen (nicht funktionale Statistik), die über einen Zeitraum von Zeit, zu der die Anwendung ausgeführt wird. Es fällt unter die Leistungsanalyse (funktionale und nichtfunktionale Statistikerfassung) der betreffenden Anwendung, die von einem Benutzer ausgeführt wird. JConsole ist eines der integrierten Tools zum Profilieren von Java-Anwendungen.

    
Hussain 29.12.2012 02:59
quelle

Tags und Links