×
Copy
Open
Link
Embed
Share
Beginning
This slide
Copy link URL
Copy link URL
Copy iframe embed code
Copy iframe embed code
Copy javascript embed code
Copy javascript embed code
Share
Tweet
Share
Tweet
Slide 1
Slide 1 text
Live Java Profiling Fabian Lange
Slide 2
Slide 2 text
Haben wir ein Problem?
Slide 3
Slide 3 text
"WE SHOULD FORGET ABOUT SMALL EFFICIENCIES, SAY ABOUT 97% OF THE TIME: PREMATURE OPTIMIZATION IS THE ROOT OF ALL EVIL" Donald Knuth (1974)
Slide 4
Slide 4 text
Wissen ist Macht
Slide 5
Slide 5 text
Die JVM als Informant
Slide 6
Slide 6 text
Der Profiler als Übersetzer
Slide 7
Slide 7 text
Profiler sind Nerds
Slide 8
Slide 8 text
Sprache der Profiler • Instrumentation • Sampling • Wall Clock & CPU Time • Self & Cumulative • Allocation • Live & GCed • Hotspot
Slide 9
Slide 9 text
Pseudocode t main() foo() bar() baz()
Slide 10
Slide 10 text
Sampling t main() foo() bar() baz()
Slide 11
Slide 11 text
Sampling t main() foo() bar() baz()
Slide 12
Slide 12 text
Sampling t main() foo() bar()
Slide 13
Slide 13 text
No content
Slide 14
Slide 14 text
Instrumentation t main() foo() bar() baz()
Slide 15
Slide 15 text
Instrumentation t main() foo() bar() baz()
Slide 16
Slide 16 text
PROFILERBAU https://github.com/CodingFabian/SamplingVsInstrumentation
Slide 17
Slide 17 text
https://blog.codecentric.de/en/2011/10/measure-java-performance- sampling-or-instrumentation/
Slide 18
Slide 18 text
http://www-plan.cs.colorado.edu/klipto/ http://bryanpendleton.blogspot.de/2010/08/improving-accuracy-of- java-profilers.html
Slide 19
Slide 19 text
REAL WORLD
Slide 20
Slide 20 text
ITEXT
Slide 21
Slide 21 text
No content
Slide 22
Slide 22 text
ITEXT Analyse mit JProfiler
Slide 23
Slide 23 text
JBOSS RULES
Slide 24
Slide 24 text
No content
Slide 25
Slide 25 text
JBOSS RULES Analyse mit JProfiler
Slide 26
Slide 26 text
VAADIN
Slide 27
Slide 27 text
No content
Slide 28
Slide 28 text
VAADIN Analyse mit JProfiler
Slide 29
Slide 29 text
GLUSTER
Slide 30
Slide 30 text
No content
Slide 31
Slide 31 text
-XX:+HeapDumpOnOutOfMemoryError
Slide 32
Slide 32 text
GLUSTER Analyse mit Eclipse MAT
Slide 33
Slide 33 text
Profiling Tipps • Mit Sampling starten • CPU – Hotspots – Pfeil-Rechts • Speicher – Allocation Hotspots – Hohe Objektanzahl – Filter nach eigenem Package • Threads – Timeline – Dumps • Absolute / Relative Anzeige ausprobieren
Slide 34
Slide 34 text
PROFILING IST EINFACH
Slide 35
Slide 35 text
Kontakt • CodingFabian •
[email protected]
• blog.codecentric.de Folien auf speakerdeck.com/codingfabian