Java Performance Tuning Workshop

Course Details
Code: JAV-401
Tuition (USD): $3,500.00 • Classroom (4 days)

Don't waste time guessing at performance bottlenecks when our comprehensive four day workshop will teach you how to quickly and definitively find the root cause of your performance woes. The course will introduce you to our unique performance tuning methodology that has successfully been used by our consultants to resolve tough performance problems. Past attendees have told us that they were able to solve long standing nagging performance issues on the Monday morning return to their projects. The course will introduce free and open source tooling that can be used immediately. Already got a fancy commercial tool? We say, all the better as this workshop will help make you more effective with them also. Looking at buying a fancy commercial tool? The workshop will can help you decide which products have the features you'll need and which ones will work best for you. No tips, no tricks, just a solid, proven approach to Java performance troubleshooting that won't be obsolete with the next release. Exercises taken from real world problems designed to expose how Java and the Java Virtual Machine works. Attendess of this workshop will learn how to:

  • Quickly identify the root causes of poor performance in your applications
  • Eliminate conditions that will prevent you from finding performance bottlenecks
  • Find critical supportive evidence before deciding on a potentially expensive course of action
  • Find performance issues before your customers find them for your

Skills Gained

Please refer to Java Performance Tuning Workshop Content Details

Who Can Benefit

Java developers and Quality Assurance engineers

Course Details

Meet the Expert

Kirk Pepperdine has been working in high performance and distributed computing for nearly 20 years. His focus has been on performance, working on architecting, developing, and tuning applications running on Cray and other high performance computing platforms. Kirk now specializes in Java, where he works in all aspects of performance and tuning in each phase of a project life cycle. Kirk was recognized by Sun Microsystems as a 2006 Java Champion recipient for his contributions to the Java community.

What Others are Saying

"This is the course that you will have wished you had attended when your boss is breathing down your neck asking why the application is slow." - Dr. Heinz Kabutz, the Java Specialist "The best course I ever attended: High knowledge of the trainer. Very helpful information, which could be used in real life. Exercises allowing to see the real life problems and the way how the problems should be solved - step by step. Introduction to open source / free tools which allow to monitor and diagnose quickly performance problems of the application." - Rafal Zablocki, ING Nationale-Nederlanden "Well balanced mix of theory, practice and real-life stories. Kirk explained the methodology of performance tuning process with hands-on exercises and didn’t try to sell any products; it was probably the most useful professional training course I have ever attended." - Vladimir Shor, WebMedia

Day 1 - Dominating Consumer

  • Performance Tuning
  • The user experience
  • System model
  • Dominating consumer
  • Hardware counters
  • Performance logging
  • Response time budgets
  • Performance benchmarking part I
  • Performance benchmarking harness
  • Load, stress, and endurance testing
  • Performance tuning anti-patterns

Day 2 - The Java Virtual Machine

  • HotSpot inner workings
  • JIT, a code changing experience
  • The role of the Code Cache
  • Best coding practices for performance
  • Memory Management
  • Garbage collection basics
  • Garbage collection alogrithms
  • HotSpot and memory management
  • Advances in memory management
  • Object Lifecycle
  • Garbage collection monitoring
  • Garbage collection troubleshooting
  • Garbage collection tuning

Day 3 - Performance Tooling

  • Interprocess Communications
  • Serialization
  • Tracing IPC
  • JMX tooling
  • Adding customized JMX instrumentation
  • Execution profiling
  • Thread monitoring
  • Memory profiling
  • Memory leaks
  • Permspace leaks

Day 4 - Practice

  • Concurrency in the JVM
  • Concurrency in the JDK
  • Techniques for improving concurrency
  • Benchmarking part II
  • Selected performance topics
  • Lots of practice