Search for Training

Java Performance Tuning

Course Overview


Java Performance Tuning training course examines the philosophies, tools, and processes required to begin tuning a Java application. Assuming most students have not experimented with performance tuning, the JVM Tuning training course begins with an introduction of performance tuning concepts, exploring what is and is not considered performance tuning. To ensure a successful learning of tuning concepts, the Introduction to Java Performance tuning course also examines the Java platform and the Java Virtual Machine architecture. With the appropriate foundation laid, Java Performance Tuning course examines common tuning tools and their applications.

Course Content


Understanding Virtual Memory NIO

  • Java New IO Package
    • Motivation for Using
    • Working with Buffers
    • Allocating Buffers
    • Buffers Advantages
    • Channels
    • Memory Mapped Files
    • Non-Blocking Operations
    • Selectors
    • NIO Uses
      • Event Driven Architecture
  • Character Streams Encoding
    • The Unicode Standard
    • Forms of Unicode
    • 32-bit Characters
    • Big / Little Endian
    • Other Encodings
    • Other Charsets - ISO 8859
    • Charset Class
    • Encoders and Decoders
    • Code Points

NIO 2.0

  • Working with path
  • Metadata File Attributes
  • Symbolic Links
  • File and Directories
  • FileVisitor Class
  • Watch Service API
    • Two Security models
    • SPI Package
  • File System Change Notification
  • Multicasting
  • Asynchronous IO with Socket and File

Garbage Collection and Memory Architecture

  • Overview
  • Generational Spaces
  • GC Tasks
  • Heap Fragmentation
  • GC Pros and Cons
  • Algorithms
  • Reachability
  • History
    • JVM 1.4, 5, 6
    • Young Space
    • Old Space
    • Summary
  • Measuring GC Activity
  • Performance
  • Object Size
  • Managing OutOfMemoryError

Reference Objects

  • Reference Objects
  • Object Reachability
  • Using References
  • SoftReference
  • WeakReference
  • PhantomReference
  • Abstracting
  • ReferenceQueue
  • WeakHashMap
  • SoftHashMap
    • Performance Implications

Garbage Collection and Performance Tips

  • Programming Tips
  • Problems with Finalization
  • Reference Objects
  • Object Allocation
  • Object Pooling
  • Large Object of different sizes

Common Tuning Options

  • Be aware of Ergonomic settings
  • Heap sizing
  • GC policy
  • Other tuning parameters
  • Tuning for throughput
  • Tuning for Low pause time

Advance Tuning Scenarios

  • GC Tuning
    • Tuning the young generation
    • Tuning Parallel GC
    • Tuning CMS
  • Monitoring the GC
  • Conclusions

JMX

  • Introduction
  • Standard Mbeans
  • Dynamic Mbeans
  • Model Mbean
  • Open Mbean
  • JMX Remoting
  • Advanced Features
  • J2EE Management(optional)

Profiling Tools
Profiling Java SE Memory

  • Memory profiling tools
  • Heap profiling strategies
  • Memory leak profiling strategies
  • Generation count
  • When to use what tools?
  • Identifying problem memory usage patterns

Profiling with Netbeans or VisualVM

  • Issues with Traditional Profiling Schemes
  • Introduction (of NetBeans profiler)
  • Architecture and Technologies used
  • Features
  • What is new in NetBeans Profiler 6.x?

Profiling Using Eclipse TPTP

  • Objectives
  • Project Structure
  • Architecture
  • Architecture Components
  • Agent Controller

Performance Programming Tips

  • Primitive and Objects
  • Abuse of the String class
  • Creating intermediate objects
  • Mutable return types
  • Wrong collections
  • Array copy

JVM Architecture and Dynamic Compilation

  • Dynamic Compilation
  • Code Hoisting
  • Dead Code Elimination
  • Biased locking
  • Loop unrolling
  • Aggressive Inlining
  • Data Flow analysis
  • OSR
  • Server VM
  • Client VM

Advanced JVM Architecture

  • Virtual Machine Design
  • Dynamic Compilation
  • VM Philosophy
  • Virtual method calls Details
  • Inlining Details
  • Speculative Optimizations
  • Standard Compiler Optimizations
  • Scalar Replacements
  • Escape Analysis
  • Lock Coarsening
  • Biased Locking
  • Inline caching
  • Large Pages
  • NUMA

Customer Reviews


Thanks to Xpertised and the tutor who walked me through all the topics with Practical exposure which is helping me in my current project.
-Waseem

Course was quite helpful in terms of understanding of concepts and practicality. Its really a very friendly environment to learn. The timing were mutually chosen, as we both are working professional. I am quite satisfied with the course.
-Tanmoy

...more
Share:

For Batch Details
Call us at: +91 7259222234

Not sure? Consult Our Experts

What is the sum of 5 + 7? (security question)

Looking for a Training for

Myself

My Team/Organization

I agree to be contacted over mail or phone

or
Call us at: +91 7259222234

Subscribe to our weekly newsletter