SlideShare a Scribd company logo
Anika Technologies
Your Transforming Partner
JVM and Java Performance Tuning
Training Contents
☛ Description
☛ Intended Audience
☛ Prerequisites
☛ Instructional Method
☛ course contents
: +91 7720092936/9766640192
Email: sales@anikatechnologies.com
JVM and Java Performance Tuning
Course Contents
page4 ☛ Understanding Virtual Memory Day1
☛ Garbage Collection and Memory Architecture
☛ Reference Objects
☛ Garbage Collection and Performance Tips
☛ Common Tuning Options
☛ Garbage Collection-Advanced
Tuning Scenarios Day2
☛ JVM Architecture and Dynamic Compilation
☛ Advanced JVM Architecture Part 1
☛ Advanced JVM Architecture-Part 2
☛ Understanding and Controlling JVM Options
☛ Monitoring JIT Day3
☛ Tuning inlining
☛ Machine Code with Debug Info
☛ Understanding Javap and VM Opcodes
for Tuning
☛ NIO
☛ NIO 2.0 Day4
☛ Class-loading
☛ Advanced Class-loading
☛ JMX
☛ ProfilingTools
Description:
■ Focus of the training is to make JVM and Java performance tuning clear and simple
as possible for the participants at the design, architecture and, implementation levels.
This is an end-to-end training. The Training illustrates almost every concept with the
help of pictures because it is much easier to understand the concept pictorially and
model code. There are a lot of illustrations in the course of the training. There are
worked out examples to illustrate the concepts for almost every topic. There is a
detailed case study that strings together all concepts and technology.
Intended Audience:
■
■
The target group is programmers who want to know foundations of concurrent
programming and existing concurrent programming environments, in order, now or
in future, to develop multithreaded applications for multi-core processors and shared
memory multiprocessors.
Java Consultants, developers or anyone with Java experience interested
in performance testing.
Prerequisites:
■
■
■
■
Some experience with distributed technologies.
Good Knowledge of Java.
Working knowledge of any database
Workstation with JDK 1.7.0 installed
Instructional Method:
■
■
This is an instructor led course provides lecture topics and the practical application
of Java and the underlying technologies.
It pictorially presents most concepts and there is a detailed case study that strings
together the technologies, patterns and design.
m
JVM and Java Performance Tuning
■
■
Understanding Virtual Memory
Garbage Collection and Memory Architecture
• Heap Fragmentation
• GC Pros and Cons
• Object Size
• Algorithms
• Overview
• Performance
• GC Tasks
• Reachability
• Managing OutOfMemoryError
• Generational Spaces
• Measuring GC Activity
■ History
• Summary
• Old Space
• Young Space
• JVM 1.4, 5, 6
■ Reference Objects
• Reference Objects
• PhantomReference
• WeakHashMap
• SoftReference
• ReferenceQueue
• Object Reachability
• WeakReference
• Using References
• Abstracting
■ SoftHashMap
• Performance Implications
■ Garbage Collection and Performance Tips
• Programming Tips
• Large Object of different sizes
• Object Pooling
• Reference Objects
• Object Allocation
• Problems with Finalization
■ Common Tuning Options
• Heap sizing
• GC policy
• Be aware of Ergonomic settings
• Other tuning parameters
• Tuning for Low pause time
• Tuning for throughput
■ Garbage Collection-Advanced Tuning Scenarios
■ Advance Tuning Scenarios-Part2
• JDK 5,6,7 defaults
• Default Flags
• Garbage Collection Data of Interest
■ Tuning GC For Throughput and Latency
■ Latency
• Old(Parallel)
• Perm
• Young (Parallel)
• Pset Configuration
■ Old(CMS)
• Tenuring Distribution
• Initiating Occupancy
• Common Scenarios
• Survivor Ratio
• Tenuring threshold
m
■ Througput
• (Parallel GC)
• CondCardmark
• Adaptive Sizing
• Tlabs
• Large Pages
• Numa
• Pset Configuration
■ CMS
• Concurrent Mode Failure
■ Monitoring GC
• Par New
• Parallel GC
• Safe Pointing
• Time Stamps
• Date Stamps
• System.GC
■ Advance Tuning Scenarios-Part1
• Monitoring the GC
• Conclusions
■ GC Tuning
• Tuning Parallel GC
• Tuning CMS
• Tuning the young generation
■ GC Tuning Methodology
• Deployment Model
• Choosing Runtime
• General GuideLines
• Data Model
■ Heap Sizing
• Factor Controlling Heap Sizing
m
■
■
■
JVM Architecture and Dynamic Compilation
• Aggressive Inlining
• Biased locking
• Client VM
• Loop unrolling
• Server VM
• Data Flow analysis
• Dynamic Compilation
• OSR
• Dead Code Elimination
• Code Hoisting
Advanced JVM Architecture Part 1
• NUMA
• Inline caching
• Virtual method calls Details
• Virtual Machine Design
• Dynamic Compilation
• Large Pages
• Biased Locking
• Lock Coarsening
• Standard Compiler Optimizations
• Speculative Optimizations
• Escape Analysis
• Scalar Replacements
• Inlining Details
• VM Philosophy
Advanced JVM Architecture-Part 2
• JIT
• Mixed mode
• Golden Rule
• Profiling
• Optimizations
m
■ Understanding and Controlling JVM Options
• DoEscapeAnalysis
• AggressiveOpts
■ CallSites
• Polymorphic
• BiMorphic
• MegaMorphic
• MonoMorphic
■ HotSpot
• Client
• Server
• Tiered
■ Monitoring JIT
• Deoptimizations
• Backing Off
• PrintCompilation
• OSR
• Log Compilations
• Optimizations
• PrintInlining
■ Intrinsics
• Common intrinsics
■ Tuning inlining
• MaxInlineSize
• InlineSmallCode
• MaxInline
• MaxRecursiveInline
• FreqInlineSize
■ Machine Code with Debug Info
• PrintingAssembly
• UnlockingDiagnostics
m
• PrintOptoAssembly
■ Understanding Javap and VM Opcodes for Tuning
• Constant values
• Stack Operations
• Opcodes
• Flow Control
• JVM Stack
• Local variables
• Stack Juggling
■ NIO
■ Character Streams Encoding
• Other Charsets - ISO 8859
• Big / Little Endian
• Forms of Unicode
• 32-bit Characters
• Code Points
• Charset Class
• Other Encodings
• The Unicode Standard
• Encoders and Decoders
■ Java New IO Package
• Non-Blocking Operations
• Buffers Advantages
• Selectors
• Channels
• Allocating Buffers
• Motivation for Using
• Memory Mapped Files
• Working with Buffers
■ NIO Uses
• Event Driven Architecture
m
■
■
■
■
NIO 2.0
• File System Change Notification
• Multicasting
• File and Directories
• Symbolic Links
• Watch Service API
• Metadata File Attributes
• Two Security models
• FileVisitor Class
• Working with path
• SPI Package
• Asynchronous IO with Socket and File
Class-loading
• Common Class loading Issues
• Changing the rules of default class visibility
• Class Loading Basics
• Introduction
• Diagnosing and resolving class loading problems
• Custom Class Loaders
• Class visibility
Advanced Class-loading
• Understanding visibility rules
• Advantages of Peer Class-loading
• Hot Loading
• IllegalAccessException
• ClassCastException
• Peer Class-loading
• Understanding delegation rules
• LinkageError
• Problems with these rules.
JMX
• Introduction
m
• Dynamic Mbeans
• Open Mbean
• Standard Mbeans
• JMX Remoting
• Advanced Features
• J2EE Management(optional)
• Model Mbean
■ ProfilingTools
■
■
■
■
Performance Programming Tips
• Abuse of the String class
• Array copy
• Creating intermediate objects
• Wrong collections
• Primitive and Objects
• Mutable return types
Profiling with Netbeans or VisualVM
• Architecture and Technologies used
• Issues with Traditional Profiling Schemes
• What is new in NetBeans Profiler 6.x?
• Features
• Introduction (of NetBeans profiler)
Profiling Using Eclipse TPTP
• Agent Controller
• Architecture Components
• Objectives
• Architecture
• Project Structure
Profiling Java SE Memory
• Memory profiling tools
• Generation count
• Memory leak profiling strategies
m
• Heap profiling strategies
• Identifying problem memory usage patterns
• When to use what tools?
Mobile: +91 7719882295/ 9730463630
Email: sales@anikatechnologies.com
Website:www.anikatechnologies.com

More Related Content

Similar to JVM and Java Performance Tuning | JVM Tuning | Java Performance

Dot Net Online training in uk and usa
Dot Net Online training in uk and usaDot Net Online training in uk and usa
Dot Net Online training in uk and usa
almaandrea
 
Dotnet Online Training
Dotnet Online TrainingDotnet Online Training
Dotnet Online Training
Summa Mcclane
 
JavaOne2016 - How to Generate Customized Java 8 Code from Your Database [TUT4...
JavaOne2016 - How to Generate Customized Java 8 Code from Your Database [TUT4...JavaOne2016 - How to Generate Customized Java 8 Code from Your Database [TUT4...
JavaOne2016 - How to Generate Customized Java 8 Code from Your Database [TUT4...
Speedment, Inc.
 
How to JavaOne 2016 - Generate Customized Java 8 Code from Your Database [TUT...
How to JavaOne 2016 - Generate Customized Java 8 Code from Your Database [TUT...How to JavaOne 2016 - Generate Customized Java 8 Code from Your Database [TUT...
How to JavaOne 2016 - Generate Customized Java 8 Code from Your Database [TUT...
Malin Weiss
 
Cqrs.frameworks
Cqrs.frameworksCqrs.frameworks
Cqrs.frameworks
Agata Piórkowska
 
Java online training from hyderabad
Java online training from hyderabadJava online training from hyderabad
Java online training from hyderabad
revanthonline
 
Best Java Online Training in India
Best Java Online Training in IndiaBest Java Online Training in India
Best Java Online Training in India
Nagendra Kumar
 
MIGRATION - PAIN OR GAIN?
MIGRATION - PAIN OR GAIN?MIGRATION - PAIN OR GAIN?
MIGRATION - PAIN OR GAIN?
DrupalCamp Kyiv
 
NodeJS - Server Side JS
NodeJS - Server Side JS NodeJS - Server Side JS
NodeJS - Server Side JS
Ganesh Kondal
 
Mastering asp.net mvc - Dot Net Tricks
Mastering asp.net mvc - Dot Net TricksMastering asp.net mvc - Dot Net Tricks
Mastering asp.net mvc - Dot Net Tricks
Gaurav Singh
 
Seminar.2009.Performance.Intro
Seminar.2009.Performance.IntroSeminar.2009.Performance.Intro
Seminar.2009.Performance.Intro
roialdaag
 
Oracle WebLogic Diagnostics & Perfomance tuning
Oracle WebLogic Diagnostics & Perfomance tuningOracle WebLogic Diagnostics & Perfomance tuning
Oracle WebLogic Diagnostics & Perfomance tuning
Michel Schildmeijer
 
Sista: Improving Cog’s JIT performance
Sista: Improving Cog’s JIT performanceSista: Improving Cog’s JIT performance
Sista: Improving Cog’s JIT performance
ESUG
 
6 weeks 6 months live project summer industrial training in cmc limited 2012
6 weeks  6 months live project summer industrial training in cmc limited  20126 weeks  6 months live project summer industrial training in cmc limited  2012
6 weeks 6 months live project summer industrial training in cmc limited 2012
CMC Limited
 
Google web toolkit gwt training
Google web toolkit gwt trainingGoogle web toolkit gwt training
Google web toolkit gwt training
FuturePoint Technologies
 
White and Black Magic on the JVM
White and Black Magic on the JVMWhite and Black Magic on the JVM
White and Black Magic on the JVM
Ivaylo Pashov
 
Java Online Training
Java Online TrainingJava Online Training
Java Online Training
revanthonlineenquiry
 
OrigoDB - take the red pill
OrigoDB - take the red pillOrigoDB - take the red pill
OrigoDB - take the red pill
Robert Friberg
 
Adobe AEM for Business Heads
Adobe AEM for Business HeadsAdobe AEM for Business Heads
Adobe AEM for Business Heads
Yash Mody
 
Webinar: How We Evaluated MongoDB as a Relational Database Replacement
Webinar: How We Evaluated MongoDB as a Relational Database ReplacementWebinar: How We Evaluated MongoDB as a Relational Database Replacement
Webinar: How We Evaluated MongoDB as a Relational Database Replacement
MongoDB
 

Similar to JVM and Java Performance Tuning | JVM Tuning | Java Performance (20)

Dot Net Online training in uk and usa
Dot Net Online training in uk and usaDot Net Online training in uk and usa
Dot Net Online training in uk and usa
 
Dotnet Online Training
Dotnet Online TrainingDotnet Online Training
Dotnet Online Training
 
JavaOne2016 - How to Generate Customized Java 8 Code from Your Database [TUT4...
JavaOne2016 - How to Generate Customized Java 8 Code from Your Database [TUT4...JavaOne2016 - How to Generate Customized Java 8 Code from Your Database [TUT4...
JavaOne2016 - How to Generate Customized Java 8 Code from Your Database [TUT4...
 
How to JavaOne 2016 - Generate Customized Java 8 Code from Your Database [TUT...
How to JavaOne 2016 - Generate Customized Java 8 Code from Your Database [TUT...How to JavaOne 2016 - Generate Customized Java 8 Code from Your Database [TUT...
How to JavaOne 2016 - Generate Customized Java 8 Code from Your Database [TUT...
 
Cqrs.frameworks
Cqrs.frameworksCqrs.frameworks
Cqrs.frameworks
 
Java online training from hyderabad
Java online training from hyderabadJava online training from hyderabad
Java online training from hyderabad
 
Best Java Online Training in India
Best Java Online Training in IndiaBest Java Online Training in India
Best Java Online Training in India
 
MIGRATION - PAIN OR GAIN?
MIGRATION - PAIN OR GAIN?MIGRATION - PAIN OR GAIN?
MIGRATION - PAIN OR GAIN?
 
NodeJS - Server Side JS
NodeJS - Server Side JS NodeJS - Server Side JS
NodeJS - Server Side JS
 
Mastering asp.net mvc - Dot Net Tricks
Mastering asp.net mvc - Dot Net TricksMastering asp.net mvc - Dot Net Tricks
Mastering asp.net mvc - Dot Net Tricks
 
Seminar.2009.Performance.Intro
Seminar.2009.Performance.IntroSeminar.2009.Performance.Intro
Seminar.2009.Performance.Intro
 
Oracle WebLogic Diagnostics & Perfomance tuning
Oracle WebLogic Diagnostics & Perfomance tuningOracle WebLogic Diagnostics & Perfomance tuning
Oracle WebLogic Diagnostics & Perfomance tuning
 
Sista: Improving Cog’s JIT performance
Sista: Improving Cog’s JIT performanceSista: Improving Cog’s JIT performance
Sista: Improving Cog’s JIT performance
 
6 weeks 6 months live project summer industrial training in cmc limited 2012
6 weeks  6 months live project summer industrial training in cmc limited  20126 weeks  6 months live project summer industrial training in cmc limited  2012
6 weeks 6 months live project summer industrial training in cmc limited 2012
 
Google web toolkit gwt training
Google web toolkit gwt trainingGoogle web toolkit gwt training
Google web toolkit gwt training
 
White and Black Magic on the JVM
White and Black Magic on the JVMWhite and Black Magic on the JVM
White and Black Magic on the JVM
 
Java Online Training
Java Online TrainingJava Online Training
Java Online Training
 
OrigoDB - take the red pill
OrigoDB - take the red pillOrigoDB - take the red pill
OrigoDB - take the red pill
 
Adobe AEM for Business Heads
Adobe AEM for Business HeadsAdobe AEM for Business Heads
Adobe AEM for Business Heads
 
Webinar: How We Evaluated MongoDB as a Relational Database Replacement
Webinar: How We Evaluated MongoDB as a Relational Database ReplacementWebinar: How We Evaluated MongoDB as a Relational Database Replacement
Webinar: How We Evaluated MongoDB as a Relational Database Replacement
 

More from Anand Narayanan

Scrum Foundation Training by Anika Technologies
Scrum Foundation Training by Anika TechnologiesScrum Foundation Training by Anika Technologies
Scrum Foundation Training by Anika Technologies
Anand Narayanan
 
Agile Essentials Training by Anika Technologies
Agile Essentials Training by Anika TechnologiesAgile Essentials Training by Anika Technologies
Agile Essentials Training by Anika Technologies
Anand Narayanan
 
Smart Staffing using Regression Analysis Model
Smart Staffing using Regression Analysis ModelSmart Staffing using Regression Analysis Model
Smart Staffing using Regression Analysis Model
Anand Narayanan
 
Sentiment analysis using nlp
Sentiment analysis using nlpSentiment analysis using nlp
Sentiment analysis using nlp
Anand Narayanan
 
Deep learning with_computer_vision
Deep learning with_computer_visionDeep learning with_computer_vision
Deep learning with_computer_vision
Anand Narayanan
 
Spark Internals Training | Apache Spark | Spark | Anika Technologies
Spark Internals Training | Apache Spark | Spark | Anika TechnologiesSpark Internals Training | Apache Spark | Spark | Anika Technologies
Spark Internals Training | Apache Spark | Spark | Anika Technologies
Anand Narayanan
 
Advanced Elastic Search | Elastic Search | Kibana | Logstash
Advanced Elastic Search | Elastic Search | Kibana | LogstashAdvanced Elastic Search | Elastic Search | Kibana | Logstash
Advanced Elastic Search | Elastic Search | Kibana | Logstash
Anand Narayanan
 
Deep learning internals
Deep learning internalsDeep learning internals
Deep learning internals
Anand Narayanan
 
Understanding and Designing Ultra low latency systems | Low Latency | Ultra L...
Understanding and Designing Ultra low latency systems | Low Latency | Ultra L...Understanding and Designing Ultra low latency systems | Low Latency | Ultra L...
Understanding and Designing Ultra low latency systems | Low Latency | Ultra L...
Anand Narayanan
 
Big Data Analytics and Artifical Intelligence
Big Data Analytics and Artifical IntelligenceBig Data Analytics and Artifical Intelligence
Big Data Analytics and Artifical Intelligence
Anand Narayanan
 
SynopsisLowLatencySeminar.PDF
SynopsisLowLatencySeminar.PDFSynopsisLowLatencySeminar.PDF
SynopsisLowLatencySeminar.PDF
Anand Narayanan
 

More from Anand Narayanan (11)

Scrum Foundation Training by Anika Technologies
Scrum Foundation Training by Anika TechnologiesScrum Foundation Training by Anika Technologies
Scrum Foundation Training by Anika Technologies
 
Agile Essentials Training by Anika Technologies
Agile Essentials Training by Anika TechnologiesAgile Essentials Training by Anika Technologies
Agile Essentials Training by Anika Technologies
 
Smart Staffing using Regression Analysis Model
Smart Staffing using Regression Analysis ModelSmart Staffing using Regression Analysis Model
Smart Staffing using Regression Analysis Model
 
Sentiment analysis using nlp
Sentiment analysis using nlpSentiment analysis using nlp
Sentiment analysis using nlp
 
Deep learning with_computer_vision
Deep learning with_computer_visionDeep learning with_computer_vision
Deep learning with_computer_vision
 
Spark Internals Training | Apache Spark | Spark | Anika Technologies
Spark Internals Training | Apache Spark | Spark | Anika TechnologiesSpark Internals Training | Apache Spark | Spark | Anika Technologies
Spark Internals Training | Apache Spark | Spark | Anika Technologies
 
Advanced Elastic Search | Elastic Search | Kibana | Logstash
Advanced Elastic Search | Elastic Search | Kibana | LogstashAdvanced Elastic Search | Elastic Search | Kibana | Logstash
Advanced Elastic Search | Elastic Search | Kibana | Logstash
 
Deep learning internals
Deep learning internalsDeep learning internals
Deep learning internals
 
Understanding and Designing Ultra low latency systems | Low Latency | Ultra L...
Understanding and Designing Ultra low latency systems | Low Latency | Ultra L...Understanding and Designing Ultra low latency systems | Low Latency | Ultra L...
Understanding and Designing Ultra low latency systems | Low Latency | Ultra L...
 
Big Data Analytics and Artifical Intelligence
Big Data Analytics and Artifical IntelligenceBig Data Analytics and Artifical Intelligence
Big Data Analytics and Artifical Intelligence
 
SynopsisLowLatencySeminar.PDF
SynopsisLowLatencySeminar.PDFSynopsisLowLatencySeminar.PDF
SynopsisLowLatencySeminar.PDF
 

Recently uploaded

Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Tatiana Kojar
 
Operating System Used by Users in day-to-day life.pptx
Operating System Used by Users in day-to-day life.pptxOperating System Used by Users in day-to-day life.pptx
Operating System Used by Users in day-to-day life.pptx
Pravash Chandra Das
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
innovationoecd
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
Zilliz
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
panagenda
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
saastr
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Jeffrey Haguewood
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
saastr
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Tosin Akinosho
 
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
alexjohnson7307
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
Zilliz
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
DanBrown980551
 
AWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptxAWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptx
HarisZaheer8
 
Trusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process MiningTrusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process Mining
LucaBarbaro3
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
SitimaJohn
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
Zilliz
 
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing InstancesEnergy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Alpen-Adria-Universität
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
Jakub Marek
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
Pixlogix Infotech
 

Recently uploaded (20)

Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
Skybuffer AI: Advanced Conversational and Generative AI Solution on SAP Busin...
 
Operating System Used by Users in day-to-day life.pptx
Operating System Used by Users in day-to-day life.pptxOperating System Used by Users in day-to-day life.pptx
Operating System Used by Users in day-to-day life.pptx
 
TrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy SurveyTrustArc Webinar - 2024 Global Privacy Survey
TrustArc Webinar - 2024 Global Privacy Survey
 
Presentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of GermanyPresentation of the OECD Artificial Intelligence Review of Germany
Presentation of the OECD Artificial Intelligence Review of Germany
 
Programming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup SlidesProgramming Foundation Models with DSPy - Meetup Slides
Programming Foundation Models with DSPy - Meetup Slides
 
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAUHCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
HCL Notes und Domino Lizenzkostenreduzierung in der Welt von DLAU
 
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
Deep Dive: AI-Powered Marketing to Get More Leads and Customers with HyperGro...
 
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
Salesforce Integration for Bonterra Impact Management (fka Social Solutions A...
 
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
Overcoming the PLG Trap: Lessons from Canva's Head of Sales & Head of EMEA Da...
 
Monitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdfMonitoring and Managing Anomaly Detection on OpenShift.pdf
Monitoring and Managing Anomaly Detection on OpenShift.pdf
 
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
leewayhertz.com-AI in predictive maintenance Use cases technologies benefits ...
 
Generating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and MilvusGenerating privacy-protected synthetic data using Secludy and Milvus
Generating privacy-protected synthetic data using Secludy and Milvus
 
5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides5th LF Energy Power Grid Model Meet-up Slides
5th LF Energy Power Grid Model Meet-up Slides
 
AWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptxAWS Cloud Cost Optimization Presentation.pptx
AWS Cloud Cost Optimization Presentation.pptx
 
Trusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process MiningTrusted Execution Environment for Decentralized Process Mining
Trusted Execution Environment for Decentralized Process Mining
 
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptxOcean lotus Threat actors project by John Sitima 2024 (1).pptx
Ocean lotus Threat actors project by John Sitima 2024 (1).pptx
 
Fueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte WebinarFueling AI with Great Data with Airbyte Webinar
Fueling AI with Great Data with Airbyte Webinar
 
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing InstancesEnergy Efficient Video Encoding for Cloud and Edge Computing Instances
Energy Efficient Video Encoding for Cloud and Edge Computing Instances
 
Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)Main news related to the CCS TSI 2023 (2023/1695)
Main news related to the CCS TSI 2023 (2023/1695)
 
Best 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERPBest 20 SEO Techniques To Improve Website Visibility In SERP
Best 20 SEO Techniques To Improve Website Visibility In SERP
 

JVM and Java Performance Tuning | JVM Tuning | Java Performance

  • 1. Anika Technologies Your Transforming Partner JVM and Java Performance Tuning Training Contents ☛ Description ☛ Intended Audience ☛ Prerequisites ☛ Instructional Method ☛ course contents
  • 2. : +91 7720092936/9766640192 Email: sales@anikatechnologies.com JVM and Java Performance Tuning Course Contents page4 ☛ Understanding Virtual Memory Day1 ☛ Garbage Collection and Memory Architecture ☛ Reference Objects ☛ Garbage Collection and Performance Tips ☛ Common Tuning Options ☛ Garbage Collection-Advanced Tuning Scenarios Day2 ☛ JVM Architecture and Dynamic Compilation ☛ Advanced JVM Architecture Part 1 ☛ Advanced JVM Architecture-Part 2 ☛ Understanding and Controlling JVM Options ☛ Monitoring JIT Day3 ☛ Tuning inlining ☛ Machine Code with Debug Info ☛ Understanding Javap and VM Opcodes for Tuning ☛ NIO ☛ NIO 2.0 Day4 ☛ Class-loading ☛ Advanced Class-loading ☛ JMX ☛ ProfilingTools
  • 3. Description: ■ Focus of the training is to make JVM and Java performance tuning clear and simple as possible for the participants at the design, architecture and, implementation levels. This is an end-to-end training. The Training illustrates almost every concept with the help of pictures because it is much easier to understand the concept pictorially and model code. There are a lot of illustrations in the course of the training. There are worked out examples to illustrate the concepts for almost every topic. There is a detailed case study that strings together all concepts and technology. Intended Audience: ■ ■ The target group is programmers who want to know foundations of concurrent programming and existing concurrent programming environments, in order, now or in future, to develop multithreaded applications for multi-core processors and shared memory multiprocessors. Java Consultants, developers or anyone with Java experience interested in performance testing. Prerequisites: ■ ■ ■ ■ Some experience with distributed technologies. Good Knowledge of Java. Working knowledge of any database Workstation with JDK 1.7.0 installed Instructional Method: ■ ■ This is an instructor led course provides lecture topics and the practical application of Java and the underlying technologies. It pictorially presents most concepts and there is a detailed case study that strings together the technologies, patterns and design. m
  • 4. JVM and Java Performance Tuning ■ ■ Understanding Virtual Memory Garbage Collection and Memory Architecture • Heap Fragmentation • GC Pros and Cons • Object Size • Algorithms • Overview • Performance • GC Tasks • Reachability • Managing OutOfMemoryError • Generational Spaces • Measuring GC Activity ■ History • Summary • Old Space • Young Space • JVM 1.4, 5, 6 ■ Reference Objects • Reference Objects • PhantomReference • WeakHashMap • SoftReference • ReferenceQueue • Object Reachability • WeakReference • Using References • Abstracting ■ SoftHashMap • Performance Implications
  • 5. ■ Garbage Collection and Performance Tips • Programming Tips • Large Object of different sizes • Object Pooling • Reference Objects • Object Allocation • Problems with Finalization ■ Common Tuning Options • Heap sizing • GC policy • Be aware of Ergonomic settings • Other tuning parameters • Tuning for Low pause time • Tuning for throughput ■ Garbage Collection-Advanced Tuning Scenarios ■ Advance Tuning Scenarios-Part2 • JDK 5,6,7 defaults • Default Flags • Garbage Collection Data of Interest ■ Tuning GC For Throughput and Latency ■ Latency • Old(Parallel) • Perm • Young (Parallel) • Pset Configuration ■ Old(CMS) • Tenuring Distribution • Initiating Occupancy • Common Scenarios • Survivor Ratio • Tenuring threshold m
  • 6. ■ Througput • (Parallel GC) • CondCardmark • Adaptive Sizing • Tlabs • Large Pages • Numa • Pset Configuration ■ CMS • Concurrent Mode Failure ■ Monitoring GC • Par New • Parallel GC • Safe Pointing • Time Stamps • Date Stamps • System.GC ■ Advance Tuning Scenarios-Part1 • Monitoring the GC • Conclusions ■ GC Tuning • Tuning Parallel GC • Tuning CMS • Tuning the young generation ■ GC Tuning Methodology • Deployment Model • Choosing Runtime • General GuideLines • Data Model ■ Heap Sizing • Factor Controlling Heap Sizing m
  • 7. ■ ■ ■ JVM Architecture and Dynamic Compilation • Aggressive Inlining • Biased locking • Client VM • Loop unrolling • Server VM • Data Flow analysis • Dynamic Compilation • OSR • Dead Code Elimination • Code Hoisting Advanced JVM Architecture Part 1 • NUMA • Inline caching • Virtual method calls Details • Virtual Machine Design • Dynamic Compilation • Large Pages • Biased Locking • Lock Coarsening • Standard Compiler Optimizations • Speculative Optimizations • Escape Analysis • Scalar Replacements • Inlining Details • VM Philosophy Advanced JVM Architecture-Part 2 • JIT • Mixed mode • Golden Rule • Profiling • Optimizations m
  • 8. ■ Understanding and Controlling JVM Options • DoEscapeAnalysis • AggressiveOpts ■ CallSites • Polymorphic • BiMorphic • MegaMorphic • MonoMorphic ■ HotSpot • Client • Server • Tiered ■ Monitoring JIT • Deoptimizations • Backing Off • PrintCompilation • OSR • Log Compilations • Optimizations • PrintInlining ■ Intrinsics • Common intrinsics ■ Tuning inlining • MaxInlineSize • InlineSmallCode • MaxInline • MaxRecursiveInline • FreqInlineSize ■ Machine Code with Debug Info • PrintingAssembly • UnlockingDiagnostics m
  • 9. • PrintOptoAssembly ■ Understanding Javap and VM Opcodes for Tuning • Constant values • Stack Operations • Opcodes • Flow Control • JVM Stack • Local variables • Stack Juggling ■ NIO ■ Character Streams Encoding • Other Charsets - ISO 8859 • Big / Little Endian • Forms of Unicode • 32-bit Characters • Code Points • Charset Class • Other Encodings • The Unicode Standard • Encoders and Decoders ■ Java New IO Package • Non-Blocking Operations • Buffers Advantages • Selectors • Channels • Allocating Buffers • Motivation for Using • Memory Mapped Files • Working with Buffers ■ NIO Uses • Event Driven Architecture m
  • 10. ■ ■ ■ ■ NIO 2.0 • File System Change Notification • Multicasting • File and Directories • Symbolic Links • Watch Service API • Metadata File Attributes • Two Security models • FileVisitor Class • Working with path • SPI Package • Asynchronous IO with Socket and File Class-loading • Common Class loading Issues • Changing the rules of default class visibility • Class Loading Basics • Introduction • Diagnosing and resolving class loading problems • Custom Class Loaders • Class visibility Advanced Class-loading • Understanding visibility rules • Advantages of Peer Class-loading • Hot Loading • IllegalAccessException • ClassCastException • Peer Class-loading • Understanding delegation rules • LinkageError • Problems with these rules. JMX • Introduction m
  • 11. • Dynamic Mbeans • Open Mbean • Standard Mbeans • JMX Remoting • Advanced Features • J2EE Management(optional) • Model Mbean ■ ProfilingTools ■ ■ ■ ■ Performance Programming Tips • Abuse of the String class • Array copy • Creating intermediate objects • Wrong collections • Primitive and Objects • Mutable return types Profiling with Netbeans or VisualVM • Architecture and Technologies used • Issues with Traditional Profiling Schemes • What is new in NetBeans Profiler 6.x? • Features • Introduction (of NetBeans profiler) Profiling Using Eclipse TPTP • Agent Controller • Architecture Components • Objectives • Architecture • Project Structure Profiling Java SE Memory • Memory profiling tools • Generation count • Memory leak profiling strategies m
  • 12. • Heap profiling strategies • Identifying problem memory usage patterns • When to use what tools? Mobile: +91 7719882295/ 9730463630 Email: sales@anikatechnologies.com Website:www.anikatechnologies.com