SlideShare a Scribd company logo
1 of 106
A Song of JIT and GC
1
QCon London 2016
Monica Beckwith
monica@codekaram.com; @mon_beck
https://www.linkedin.com/in/monicabeckwith
www.codekaram.com
Game of Performance
©2016 CodeKaram
About Me
• Java/JVM/GC Performance Engineer/Consultant
• Worked at AMD, Sun, Oracle…
• Worked with HotSpot JVM for more than a
decade
• JVM heuristics, JIT compiler, GCs:
Parallel(Old) GC, G1 GC, CMS GC
2
©2016 CodeKaram
Many Thanks
• Vladimir Kozlov (Hotspot JIT Team) - for clearing
my understanding of tiered compilation, escape
analysis and nuances of dynamic
deoptimizations.
• Jon Masamitsu (Hotspot GC Team) - for keeping
me on track with JDK8 changes that related to
GC.
3
©2016 CodeKaram
Agenda
• The Helpers within the JVM
• JIT & Runtime
• Adaptive Optimization
• CompileThreshold
• Inlining
• Dynamic Deoptimization
4
©2016 CodeKaram
Agenda
• The Helpers within the JVM
• JIT & Runtime
• Tiered Compilation
• Intrinsics
• Escape Analysis
• Compressed Oops
• Compressed Class Pointers
5
©2016 CodeKaram
Agenda
• The Helpers within the JVM
• Garbage Collection
• Allocation
• TLAB
• NUMA Aware Allocator
6
©2016 CodeKaram
Agenda
• The Helpers within the JVM
• Garbage Collection
• Reclamation
• Mark-Sweep-Compact (Serial + Parallel)
• Mark-Sweep
• Scavenging
7
©2016 CodeKaram
Agenda
• The Helpers within the JVM
• Garbage Collection
• String Interning and Deduplication
8
©2016 CodeKaram
Interfacing The Metal
9
Java Application
Java
APIs
Runtime
JIT Compiler
GC
Java VM
Class loader
OS + Hardware
©2016 CodeKaram
Interfacing The Metal
10
Java Application
Java
APIs
Java VM
OS + HardwareJRE
Runtime
JIT Compiler
GC
Class loader
©2016 CodeKaram
The Helpers
11
Java VM
Runtime
JIT Compiler
GC
12
The Helpers - JIT And
Runtime.
13
Advanced JIT & Runtime
Optimizations - Adaptive
Optimization
©2016 CodeKaram
• Startup - Interpreter
• Adaptive optimization - Performance critical methods
• Compilation:
• CompileThreshold
• Identify root of compilation
• Method Compilation or On-stack replacement
(Loop)?
14
JIT & Runtime
©2016 CodeKaram
PrintCompilation
15
timestamp compilation-id flags tiered-
compilation-level Method <@ osr_bci> code-
size <deoptimization>
©2016 CodeKaram
PrintCompilation
16
Flags:
%: is_osr_method
s: is_synchronized
!: has_exception_handler
b: is_blocking
n: is_native
©2016 CodeKaram
PrintCompilation
17
567 693 % ! 3
org.h2.command.dml.Insert::insertRows @ 76 (513 bytes)
656 797 n 0
java.lang.Object::clone (native)
779 835 s 4
java.lang.StringBuffer::append (13 bytes)
©2016 CodeKaram
• Adaptive optimization - Performance critical
methods
• Inlining:
• MinInliningThreshold, MaxFreqInlineSize,
InlineSmallCode, MaxInlineSize,
MaxInlineLevel, DesiredMethodLimit …
18
JIT & Runtime
©2016 CodeKaram
PrintInling*
19
@ 76 java.util.zip.Inflater::setInput (74 bytes)
too big
@ 80 java.io.BufferedInputStream::getBufIfOpen (21
bytes) inline (hot)
@ 91 java.lang.System::arraycopy (0 bytes)
(intrinsic)
@ 2 java.lang.ClassLoader::checkName (43 bytes)
callee is too large
* needs -XX:+UnlockDiagnosticVMOptions
©2016 CodeKaram
• Adaptive optimization - Performance critical
methods
• Dynamic de-optimization
• dependencies invalidation
• classes unloading and redefinition
• uncommon path in compiled code
20
JIT & Runtime
©2016 CodeKaram
PrintCompilation
21
573 704 2
org.h2.table.Table::fireAfterRow (17 bytes)
7963 2223 4
org.h2.table.Table::fireAfterRow (17 bytes)
7964 704 2
org.h2.table.Table::fireAfterRow (17 bytes) made not
entrant
33547 704 2
org.h2.table.Table::fireAfterRow (17 bytes) made
zombie
22
Advanced JIT & Runtime
Optimizations - Tiered
Compilation
©2016 CodeKaram
• Start in interpreter
• Tiered optimization with client compiler
• Code profiled information
• Enable server compiler
23
Tiered Compilation
©2016 CodeKaram
• C1 compilation threshold for tiered is about a 100
invocations
• Tiered Compilation has a lot more profiled information
for C1 compiled methods
• CodeCache needs to be 5x larger than non-tiered
• Default on JDK8 when tiered is enabled (48MB vs
240MB)
• Need more? Use -XX:ReservedCodeCacheSize
24
Tiered Compilation - Effect
on Code Cache
©2016 CodeKaram
• Fast dynamic type tests for type safety
• Range check elimination
• Loop unrolling
• Profile data guided optimizations
• Escape Analysis
• Intrinsics
• Vectorization
25
Other JIT Compiler
Optimizations
26
Advanced JIT & Runtime
Optimizations - Intrinsics
©2016 CodeKaram27
Without Intrinsics
Java Method
JIT Compilation
Execute Generated Code
©2016 CodeKaram28
Intrinsics
Java Method
JIT Compilation
Execute Optimized Code
Call Hand-
Optimized
Assembly Code
©2016 CodeKaram
PrintInling*
29
@ 76 java.util.zip.Inflater::setInput (74 bytes)
too big
@ 80 java.io.BufferedInputStream::getBufIfOpen (21
bytes) inline (hot)
@ 91 java.lang.System::arraycopy (0 bytes)
(intrinsic)
@ 2 java.lang.ClassLoader::checkName (43 bytes)
callee is too large
* needs -XX:+UnlockDiagnosticVMOptions
30
Advanced JIT & Runtime
Optimizations - Escape Analysis
©2016 CodeKaram
• Entire IR graph
• escaping allocations?
• not stored to a static field or non-static field of
an external object,
• not returned from method,
• not passed as parameter to another method
where it escapes.
31
Escape Analysis
©2016 CodeKaram32
Escape Analysis
allocated object doesn’t
escape the compiled method
allocated object not
passed as a parameter
+
remove allocation and keep field
values in registers
=
©2016 CodeKaram33
Escape Analysis
allocated object is
passed as a parameter
+
remove locks associated with object
and use optimized compare instructions
=
allocated object doesn’t
escape the compiled method
34
Advanced JIT & Runtime
Optimizations - Compressed
Oops
©2016 CodeKaram
A Java Object
35
Header Body
Klass
Mark
Word
Array
Length
©2016 CodeKaram
Objects, Fields & Alignment
• Objects are 8 byte aligned (default).
• Fields:
• are aligned by their type.
• can fill a gap that maybe required for
alignment.
• are accessed using offset from the start of the
object
36
©2016 CodeKaram37
Mark Word - 32 bit vs 64 bit
Klass - 32 bit vs 64 bit
Array Length - 32 bit on both
boolean, byte, char, float, int, short - 32 bit on both
double, long - 64 bit on both
ILP32 vs. LP64 Field Sizes
©2016 CodeKaram
Compressed OOPs
38
<wide-oop> = <narrow-oop-base> +
(<narrow-oop> << 3) + <field-offset>
©2016 CodeKaram
Compressed OOPs
39
Heap Size?
<4 GB
(no encoding/
decoding needed)
>4GB; <28GB
(zero-based)
<wide-oop> = <narrow-oop> <narrow-oop> << 3
©2016 CodeKaram
Compressed OOPs
40
Heap Size?
>28 GB; <32 GB
(regular)
>32 GB; <64 GB *
(change alignment)
<wide-oop> =
<narrow-oop-base>
+ (<narrow-oop>
<< 3) + <field-
offset>
<narrow-oop-base>
+ (<narrow-oop>
<< 4) + <field-
offset>
©2016 CodeKaram
Compressed OOPs
41
Heap Size? <4 GB
>4GB;
<28GB
<32GB <64GB
Object
Alignment?
8 bytes 8 bytes 8 bytes 16 bytes
Offset
Required?
No No Yes Yes
Shift by? No shift 3 3 4
©2016 CodeKaram
Compressed Class Pointers
42
• JDK 8 —> Perm Gen Removal —> Class Data outside of
heap
• Compressed class pointer space
• contains class metadata
• is a part of Metaspace
©2016 CodeKaram
Compressed Class Pointers
43
PermGen Removal Overview by Coleen Phillimore + Jon Masamitsu @JavaOne 2013
44
The Helpers - Garbage
Collection.
©2016 CodeKaram
Garbage Collection
45
Allocation
+
Reclamation
46
Garbage Collection -
Allocation.
©2016 CodeKaram
Generational Heap
47
Young
Generation
Old
Generation
Eden Survivors
48
Fast Path Allocation - Thread
Local Allocation Buffers
(TLABs).
©2016 CodeKaram
Garbage Collection -
Allocation
49
Most Allocations Eden Space
Fast Path
TLABs per thread:
• allocate lock-free
• bump-(your-own)-pointer allocation
• only co-ordinate when needing a new TLAB
©2016 CodeKaram
TLAB
50
EdenThread 1
Thread 2
Thread 3
Thread 4
TLAB TLAB TLAB TLAB TLAB
Thread 0
51
(Min)TLABSize
ResizeTLAB
TLABWasteTargetPercent
PrintTLAB
©2016 CodeKaram
TLAB
52
Eden
TLAB TLAB TLAB TLAB TLAB
©2016 CodeKaram
TLAB
53
Eden
TLAB TLAB TLAB TLAB TLAB
TLABWasteTargetPercent (default = 1%)
©2016 CodeKaram
TLAB
54
Eden
TLAB TLAB TLAB TLAB TLAB
©2016 CodeKaram
TLAB
55
Eden
TLAB TLAB TLAB TLAB
(Min)TLABSize
©2016 CodeKaram
TLAB
56
Eden
TLAB TLAB TLAB
ResizeTLAB (default = TRUE)
57
Allocation - Non Uniform
Memory Access (NUMA) Aware
Allocator.
©2016 CodeKaram
NUMA
Processing
Node 0
Memory
Controller
DRAM
Bank
Processing
Node 2
Memory
Controller
DRAM
Bank
Processing
Node 1
Memory
Controller
DRAM
Bank
Processing
Node 3
Memory
Controller
DRAM
Bank
58
©2016 CodeKaram
UseNUMA
59
Processing
Node 0
Memory
Controller
DRAM
Bank
Processing
Node 1
Memory
Controller
DRAM
Bank
Thread 0
Area
for
Node 0
Area
for
Node 1
Thread 1
Thread 2
Eden
60
UseNUMA
UseNUMAInterleaving
UseAdaptiveNUMAChunkSizing
NUMAStats
61
Garbage Collection -
Reclamation.
©2016 CodeKaram62
Old Generation
Root Set
Young Generation
Garbage Collection -Reclamation
via (Serial) Mark-Sweep-Compact
©2016 CodeKaram
Garbage Collection -Reclamation
via Parallel Mark-Compact
63
Old Generation
©2016 CodeKaram64
Garbage Collection -Reclamation
via Parallel Mark-Compact
Old Generation
©2016 CodeKaram65
Garbage Collection -Reclamation
via Parallel Mark-Compact
Old Generation
source region
destination
region
©2016 CodeKaram66
Garbage Collection -Reclamation
via Parallel Mark-Compact
Old Generation
source region
destination
region
©2016 CodeKaram67
Garbage Collection -Reclamation
via Parallel Mark-Compact
Old Generation
source region
destination
region
source region
©2016 CodeKaram68
Garbage Collection -Reclamation
via Parallel Mark-Compact
Old Generation
source region
destination
region
source region
©2016 CodeKaram69
Garbage Collection -Reclamation
via Parallel Mark-Compact
Old Generation
©2016 CodeKaram
Garbage Collection -
Reclamation via Mark-Sweep
70
Old Generation
©2016 CodeKaram
Garbage Collection -
Reclamation via Mark-Sweep
71
Old Generation
©2016 CodeKaram
Garbage Collection -
Reclamation via Scavenging
72
SurvivorEden
Young Generation
©2016 CodeKaram73
SurvivorEden
Young Generation
Garbage Collection -
Reclamation via Scavenging
©2016 CodeKaram74
SurvivorEden
Young Generation
Garbage Collection -
Reclamation via Scavenging
©2016 CodeKaram75
Garbage Collection In
OpenJDK HotSpot
The Throughput Collector -
• Young Collections - Parallel Scavenge
• Old Collections - Parallel Mark-Compact
©2016 CodeKaram76
Garbage Collection In
OpenJDK HotSpot
CMS Collector -
• Young Collections - Parallel New (similar to
Parallel Scavenge)
• Old Collections - (Mostly Concurrent) Mark-
Sweep
• Fallback Collections - Serial Mark-Sweep-
Compact
©2016 CodeKaram77
Garbage Collection In
OpenJDK HotSpot
G1 Collector -
• Young and Mixed Collections - Compaction via
Copying (similar to Parallel Scavenge)
• Fallback Collections - Serial Mark-Sweep-
Compact
78
What’s The #1 Contributor To A
GC Pause Duration?
Copying Costs!
79
©2016 CodeKaram
• Size generations keeping your application’s
object longevity and size in mind.
• short-lived; medium-lived; long-lived transient
+ permanent set.
• premature promotions are a big problem!
80
Garbage Collection - Tuning
Recommendations
©2016 CodeKaram
Generation Sizing
[Eden: 4972.0M(4972.0M)->0.0B(4916.0M) Survivors:
148.0M->204.0M Heap: 5295.8M(10.0G)->379.4M(10.0G)]
[Eden: Occupancy before GC(Eden size before
GC)->Occupancy after GC(Eden size after GC)
Survivors: Size before GC->Size after GC Heap:
Occupancy before GC(Heap size before GC)-
>Occupancy after GC(Heap size after GC)]
81
©2016 CodeKaram
Heap Information Plot
82
OccupancyinMBs
0
7500
15000
22500
30000
TimeStamps
2500 3750 5000 6250 7500 8750 10000 11250 12500
Eden Occupancy Before GC Eden Size After GC
Survivor Size After GC Old Generation Occupancy After GC
Heap Occupancy Before GC Heap Size
83
What Are The ContributorS To
GC Pause Frequency?
Allocation Rate and
Promotion Rate
84
©2016 CodeKaram
• The faster the generation gets “filled”; the sooner
a GC is triggered.
• Premature promotions are a big problem!
• Size your generations and age your objects
appropriately.
85
Garbage Collection - Tuning
Recommendations
©2016 CodeKaram
Plot Allocation & Promotion
Rates
86
©2016 CodeKaram87
Young Occupancy before GC Young Gen Size Old Gen Occupancy after GC
Heap Occupancy before GC Heap Occupancy after GC Heap Size
Timestamps
©2016 CodeKaram
Allocation Rate
88
38.692: [GC (Allocation Failure) [PSYoungGen: 917486K-
>131054K(858112K)] 1004844K->224424K(2955264K),
0.0827570 secs] [Times: user=0.61 sys=0.00, real=0.08 secs]
51.013: [GC (Allocation Failure) [PSYoungGen: 858094K-
>50272K(777728K)] 951464K->239014K(2874880K),
0.1414536 secs] [Times: user=0.70 sys=0.07, real=0.14 secs]
©2016 CodeKaram
Allocation Rate
89
38.692: [GC (Allocation Failure) [PSYoungGen: 917486K-
>131054K(858112K)] 1004844K->224424K(2955264K),
0.0827570 secs] [Times: user=0.61 sys=0.00, real=0.08 secs]
51.013: [GC (Allocation Failure) [PSYoungGen: 858094K-
>50272K(777728K)] 951464K->239014K(2874880K),
0.1414536 secs] [Times: user=0.70 sys=0.07, real=0.14 secs]
Allocation rate = (858094K-131054K)/()
©2016 CodeKaram
Allocation Rate
90
38.692: [GC (Allocation Failure) [PSYoungGen: 917486K-
>131054K(858112K)] 1004844K->224424K(2955264K),
0.0827570 secs] [Times: user=0.61 sys=0.00, real=0.08 secs]
51.013: [GC (Allocation Failure) [PSYoungGen: 858094K-
>50272K(777728K)] 951464K->239014K(2874880K),
0.1414536 secs] [Times: user=0.70 sys=0.07, real=0.14 secs]
Allocation rate = (858094K-131054K)/(51.013-38.692) =
57.6MB/s
©2016 CodeKaram
Promotion Rate
91
38.692: [GC (Allocation Failure) [PSYoungGen: 917486K-
>131054K(858112K)] 1004844K->224424K(2955264K),
0.0827570 secs] [Times: user=0.61 sys=0.00, real=0.08 secs]
51.013: [GC (Allocation Failure) [PSYoungGen: 858094K-
>50272K(777728K)] 951464K->239014K(2874880K),
0.1414536 secs] [Times: user=0.70 sys=0.07, real=0.14 secs]
Promotion rate = ((239014K - 50272K) – ()
©2016 CodeKaram
Promotion Rate
92
38.692: [GC (Allocation Failure) [PSYoungGen: 917486K-
>131054K(858112K)] 1004844K->224424K(2955264K),
0.0827570 secs] [Times: user=0.61 sys=0.00, real=0.08 secs]
51.013: [GC (Allocation Failure) [PSYoungGen: 858094K-
>50272K(777728K)] 951464K->239014K(2874880K),
0.1414536 secs] [Times: user=0.70 sys=0.07, real=0.14 secs]
Promotion rate = ((239014K - 50272K) – (951464K - 858094K))/
()
©2016 CodeKaram
Promotion Rate
93
38.692: [GC (Allocation Failure) [PSYoungGen: 917486K-
>131054K(858112K)] 1004844K->224424K(2955264K),
0.0827570 secs] [Times: user=0.61 sys=0.00, real=0.08 secs]
51.013: [GC (Allocation Failure) [PSYoungGen: 858094K-
>50272K(777728K)] 951464K->239014K(2874880K),
0.1414536 secs] [Times: user=0.70 sys=0.07, real=0.14 secs]
Promotion rate = ((239014K - 50272K) – (951464K - 858094K))/
(51.013 - 38.692) = 7.56MB/s
94
String Interning and
Deduplication
©2016 CodeKaram95
Java String Object
String1
String1
Object
char []
96
What If String1 Is Interned?
©2016 CodeKaram97
Java Interned String Object
String1
String1
Object
char []
StringX
Object
char []
StringY
Object
char []
Pool of
Strings
Java Heap
©2016 CodeKaram98
Java String Intern
• unique + constant pool of strings
• hashtable
• default = 60013 (on LP64)
• if pool already contain string.equals(String1)?
• return string from the string pool
• else, add String1 to the pool; return its reference
©2016 CodeKaram99
Java Interned String Objects
String1
String1
Object
char []
String2
String2
Object
char []
100
If String1.intern() ==
String2.Intern() Then
String1.equals(String2) Is True.
©2016 CodeKaram101
Java Interned String Objects
String1
String1
Object
char []
StringX
Object
char []
StringY
Object
char []
String2
Pool of
Strings
Java Heap
102
What If String1.equals(String2)
And Both Are Not Interned*?
*
And You Are Using The G1 Collector
©2016 CodeKaram103
Java String Deduplication
(G1)
String1
String1
Object
char []
String2
String2
Object
©2016 CodeKaram
Further Reading
104
• Mark Price’s talk: https://qconlondon.com/presentation/hot-code-
faster-code-addressing-jvm-warm
• https://wiki.openjdk.java.net/display/HotSpot/Server+Compiler
+Inlining+Messages
• https://wiki.openjdk.java.net/display/HotSpot/EscapeAnalysis
• Compressed Class Pointers: https://youtu.be/AHtfza2Tkt0?t=754
• String Deduplication: http://openjdk.java.net/jeps/192
• Perm Gen Removal: http://www.infoq.com/articles/Java-
PERMGEN-Removed
©2016 CodeKaram
Appendix
105
©2016 CodeKaram
Real-World Issues &
Workarounds - JDK 8 update 45+
106
https://github.com/facebook/presto/commit/
91e1b3bb6bbfffc62401025a24231cd388992d7c
https://gist.github.com/nileema/
6fb667a215e95919242f

More Related Content

What's hot

Java 9: The (G1) GC Awakens!
Java 9: The (G1) GC Awakens!Java 9: The (G1) GC Awakens!
Java 9: The (G1) GC Awakens!Monica Beckwith
 
JFokus Java 9 contended locking performance
JFokus Java 9 contended locking performanceJFokus Java 9 contended locking performance
JFokus Java 9 contended locking performanceMonica Beckwith
 
OPENJDK: IN THE NEW AGE OF CONCURRENT GARBAGE COLLECTORS
OPENJDK: IN THE NEW AGE OF CONCURRENT GARBAGE COLLECTORSOPENJDK: IN THE NEW AGE OF CONCURRENT GARBAGE COLLECTORS
OPENJDK: IN THE NEW AGE OF CONCURRENT GARBAGE COLLECTORSMonica Beckwith
 
Enabling Java: Windows on Arm64 - A Success Story!
Enabling Java: Windows on Arm64 - A Success Story!Enabling Java: Windows on Arm64 - A Success Story!
Enabling Java: Windows on Arm64 - A Success Story!Monica Beckwith
 
Java Garbage Collectors – Moving to Java7 Garbage First (G1) Collector
Java Garbage Collectors – Moving to Java7 Garbage First (G1) CollectorJava Garbage Collectors – Moving to Java7 Garbage First (G1) Collector
Java Garbage Collectors – Moving to Java7 Garbage First (G1) CollectorGurpreet Sachdeva
 
Hadoop world g1_gc_forh_base_v4
Hadoop world g1_gc_forh_base_v4Hadoop world g1_gc_forh_base_v4
Hadoop world g1_gc_forh_base_v4YanpingWang
 
Storing Cassandra Metrics
Storing Cassandra MetricsStoring Cassandra Metrics
Storing Cassandra MetricsChris Lohfink
 
Introduction of Java GC Tuning and Java Java Mission Control
Introduction of Java GC Tuning and Java Java Mission ControlIntroduction of Java GC Tuning and Java Java Mission Control
Introduction of Java GC Tuning and Java Java Mission ControlLeon Chen
 
GC Tuning in the HotSpot Java VM - a FISL 10 Presentation
GC Tuning in the HotSpot Java VM - a FISL 10 PresentationGC Tuning in the HotSpot Java VM - a FISL 10 Presentation
GC Tuning in the HotSpot Java VM - a FISL 10 PresentationLudovic Poitou
 
Tuning Java for Big Data
Tuning Java for Big DataTuning Java for Big Data
Tuning Java for Big DataScott Seighman
 
Everything I Ever Learned About JVM Performance Tuning @Twitter
Everything I Ever Learned About JVM Performance Tuning @TwitterEverything I Ever Learned About JVM Performance Tuning @Twitter
Everything I Ever Learned About JVM Performance Tuning @TwitterAttila Szegedi
 
HotSpot JVM Tuning
HotSpot JVM TuningHotSpot JVM Tuning
HotSpot JVM TuningGilad Garon
 
JVM @ Taobao - QCon Hangzhou 2011
JVM @ Taobao - QCon Hangzhou 2011JVM @ Taobao - QCon Hangzhou 2011
JVM @ Taobao - QCon Hangzhou 2011Kris Mok
 
Garbage First and you
Garbage First and youGarbage First and you
Garbage First and youKai Koenig
 
Scala & Spark(1.6) in Performance Aspect for Scala Taiwan
Scala & Spark(1.6) in Performance Aspect for Scala TaiwanScala & Spark(1.6) in Performance Aspect for Scala Taiwan
Scala & Spark(1.6) in Performance Aspect for Scala TaiwanJimin Hsieh
 
Let's Learn to Talk to GC Logs in Java 9
Let's Learn to Talk to GC Logs in Java 9Let's Learn to Talk to GC Logs in Java 9
Let's Learn to Talk to GC Logs in Java 9Poonam Bajaj Parhar
 
Processing Big Data in Real-Time - Yanai Franchi, Tikal
Processing Big Data in Real-Time - Yanai Franchi, TikalProcessing Big Data in Real-Time - Yanai Franchi, Tikal
Processing Big Data in Real-Time - Yanai Franchi, TikalCodemotion Tel Aviv
 

What's hot (20)

Java 9: The (G1) GC Awakens!
Java 9: The (G1) GC Awakens!Java 9: The (G1) GC Awakens!
Java 9: The (G1) GC Awakens!
 
JFokus Java 9 contended locking performance
JFokus Java 9 contended locking performanceJFokus Java 9 contended locking performance
JFokus Java 9 contended locking performance
 
OPENJDK: IN THE NEW AGE OF CONCURRENT GARBAGE COLLECTORS
OPENJDK: IN THE NEW AGE OF CONCURRENT GARBAGE COLLECTORSOPENJDK: IN THE NEW AGE OF CONCURRENT GARBAGE COLLECTORS
OPENJDK: IN THE NEW AGE OF CONCURRENT GARBAGE COLLECTORS
 
Enabling Java: Windows on Arm64 - A Success Story!
Enabling Java: Windows on Arm64 - A Success Story!Enabling Java: Windows on Arm64 - A Success Story!
Enabling Java: Windows on Arm64 - A Success Story!
 
Java Garbage Collectors – Moving to Java7 Garbage First (G1) Collector
Java Garbage Collectors – Moving to Java7 Garbage First (G1) CollectorJava Garbage Collectors – Moving to Java7 Garbage First (G1) Collector
Java Garbage Collectors – Moving to Java7 Garbage First (G1) Collector
 
Hadoop world g1_gc_forh_base_v4
Hadoop world g1_gc_forh_base_v4Hadoop world g1_gc_forh_base_v4
Hadoop world g1_gc_forh_base_v4
 
Storing Cassandra Metrics
Storing Cassandra MetricsStoring Cassandra Metrics
Storing Cassandra Metrics
 
Introduction of Java GC Tuning and Java Java Mission Control
Introduction of Java GC Tuning and Java Java Mission ControlIntroduction of Java GC Tuning and Java Java Mission Control
Introduction of Java GC Tuning and Java Java Mission Control
 
GC Tuning in the HotSpot Java VM - a FISL 10 Presentation
GC Tuning in the HotSpot Java VM - a FISL 10 PresentationGC Tuning in the HotSpot Java VM - a FISL 10 Presentation
GC Tuning in the HotSpot Java VM - a FISL 10 Presentation
 
Tuning Java for Big Data
Tuning Java for Big DataTuning Java for Big Data
Tuning Java for Big Data
 
Everything I Ever Learned About JVM Performance Tuning @Twitter
Everything I Ever Learned About JVM Performance Tuning @TwitterEverything I Ever Learned About JVM Performance Tuning @Twitter
Everything I Ever Learned About JVM Performance Tuning @Twitter
 
HotSpot JVM Tuning
HotSpot JVM TuningHotSpot JVM Tuning
HotSpot JVM Tuning
 
JVM @ Taobao - QCon Hangzhou 2011
JVM @ Taobao - QCon Hangzhou 2011JVM @ Taobao - QCon Hangzhou 2011
JVM @ Taobao - QCon Hangzhou 2011
 
Garbage First and you
Garbage First and youGarbage First and you
Garbage First and you
 
Trouble with memory
Trouble with memoryTrouble with memory
Trouble with memory
 
Scala & Spark(1.6) in Performance Aspect for Scala Taiwan
Scala & Spark(1.6) in Performance Aspect for Scala TaiwanScala & Spark(1.6) in Performance Aspect for Scala Taiwan
Scala & Spark(1.6) in Performance Aspect for Scala Taiwan
 
Tuning the g1gc
Tuning the g1gcTuning the g1gc
Tuning the g1gc
 
Integrating Vert.x
Integrating Vert.xIntegrating Vert.x
Integrating Vert.x
 
Let's Learn to Talk to GC Logs in Java 9
Let's Learn to Talk to GC Logs in Java 9Let's Learn to Talk to GC Logs in Java 9
Let's Learn to Talk to GC Logs in Java 9
 
Processing Big Data in Real-Time - Yanai Franchi, Tikal
Processing Big Data in Real-Time - Yanai Franchi, TikalProcessing Big Data in Real-Time - Yanai Franchi, Tikal
Processing Big Data in Real-Time - Yanai Franchi, Tikal
 

Similar to JIT and GC optimizations for performance

Sista: Improving Cog’s JIT performance
Sista: Improving Cog’s JIT performanceSista: Improving Cog’s JIT performance
Sista: Improving Cog’s JIT performanceESUG
 
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 JVMIvaylo Pashov
 
Advanced Production Debugging
Advanced Production DebuggingAdvanced Production Debugging
Advanced Production DebuggingTakipi
 
Byte code manipulation and instrumentalization in Java
Byte code manipulation and instrumentalization in JavaByte code manipulation and instrumentalization in Java
Byte code manipulation and instrumentalization in JavaAlex Moskvin
 
Lifecycle of a JIT compiled code
Lifecycle of a JIT compiled codeLifecycle of a JIT compiled code
Lifecycle of a JIT compiled codeJ On The Beach
 
Hacking Java @JavaLand2016
Hacking Java @JavaLand2016Hacking Java @JavaLand2016
Hacking Java @JavaLand2016Sean P. Floyd
 
Vaugham Hong - Embedding JavaScript V8
Vaugham Hong - Embedding JavaScript V8Vaugham Hong - Embedding JavaScript V8
Vaugham Hong - Embedding JavaScript V8Allen Pike
 
How the HotSpot and Graal JVMs execute Java Code
How the HotSpot and Graal JVMs execute Java CodeHow the HotSpot and Graal JVMs execute Java Code
How the HotSpot and Graal JVMs execute Java CodeJim Gough
 
Code lifecycle in the jvm - TopConf Linz
Code lifecycle in the jvm - TopConf LinzCode lifecycle in the jvm - TopConf Linz
Code lifecycle in the jvm - TopConf LinzIvan Krylov
 
"JIT compiler overview" @ JEEConf 2013, Kiev, Ukraine
"JIT compiler overview" @ JEEConf 2013, Kiev, Ukraine"JIT compiler overview" @ JEEConf 2013, Kiev, Ukraine
"JIT compiler overview" @ JEEConf 2013, Kiev, UkraineVladimir Ivanov
 
Bytecode Manipulation with a Java Agent and Byte Buddy
Bytecode Manipulation with a Java Agent and Byte BuddyBytecode Manipulation with a Java Agent and Byte Buddy
Bytecode Manipulation with a Java Agent and Byte BuddyKoichi Sakata
 
G1 collector and tuning and Cassandra
G1 collector and tuning and CassandraG1 collector and tuning and Cassandra
G1 collector and tuning and CassandraChris Lohfink
 
SPARKNaCl: A verified, fast cryptographic library
SPARKNaCl: A verified, fast cryptographic librarySPARKNaCl: A verified, fast cryptographic library
SPARKNaCl: A verified, fast cryptographic libraryAdaCore
 
Tuning Java GC to resolve performance issues
Tuning Java GC to resolve performance issuesTuning Java GC to resolve performance issues
Tuning Java GC to resolve performance issuesSergey Podolsky
 
Triton and Symbolic execution on GDB@DEF CON China
Triton and Symbolic execution on GDB@DEF CON ChinaTriton and Symbolic execution on GDB@DEF CON China
Triton and Symbolic execution on GDB@DEF CON ChinaWei-Bo Chen
 
Performance van Java 8 en verder - Jeroen Borgers
Performance van Java 8 en verder - Jeroen BorgersPerformance van Java 8 en verder - Jeroen Borgers
Performance van Java 8 en verder - Jeroen BorgersNLJUG
 
Java 8 selected updates
Java 8 selected updatesJava 8 selected updates
Java 8 selected updatesVinay H G
 
[DLHacks]Introduction to ChainerCV
[DLHacks]Introduction to ChainerCV[DLHacks]Introduction to ChainerCV
[DLHacks]Introduction to ChainerCVDeep Learning JP
 
JVM and Java Performance Tuning | JVM Tuning | Java Performance
JVM and Java Performance Tuning | JVM Tuning | Java PerformanceJVM and Java Performance Tuning | JVM Tuning | Java Performance
JVM and Java Performance Tuning | JVM Tuning | Java PerformanceAnand Narayanan
 
JVM Under the Hood
JVM Under the HoodJVM Under the Hood
JVM Under the HoodSerkan Özal
 

Similar to JIT and GC optimizations for performance (20)

Sista: Improving Cog’s JIT performance
Sista: Improving Cog’s JIT performanceSista: Improving Cog’s JIT performance
Sista: Improving Cog’s JIT performance
 
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
 
Advanced Production Debugging
Advanced Production DebuggingAdvanced Production Debugging
Advanced Production Debugging
 
Byte code manipulation and instrumentalization in Java
Byte code manipulation and instrumentalization in JavaByte code manipulation and instrumentalization in Java
Byte code manipulation and instrumentalization in Java
 
Lifecycle of a JIT compiled code
Lifecycle of a JIT compiled codeLifecycle of a JIT compiled code
Lifecycle of a JIT compiled code
 
Hacking Java @JavaLand2016
Hacking Java @JavaLand2016Hacking Java @JavaLand2016
Hacking Java @JavaLand2016
 
Vaugham Hong - Embedding JavaScript V8
Vaugham Hong - Embedding JavaScript V8Vaugham Hong - Embedding JavaScript V8
Vaugham Hong - Embedding JavaScript V8
 
How the HotSpot and Graal JVMs execute Java Code
How the HotSpot and Graal JVMs execute Java CodeHow the HotSpot and Graal JVMs execute Java Code
How the HotSpot and Graal JVMs execute Java Code
 
Code lifecycle in the jvm - TopConf Linz
Code lifecycle in the jvm - TopConf LinzCode lifecycle in the jvm - TopConf Linz
Code lifecycle in the jvm - TopConf Linz
 
"JIT compiler overview" @ JEEConf 2013, Kiev, Ukraine
"JIT compiler overview" @ JEEConf 2013, Kiev, Ukraine"JIT compiler overview" @ JEEConf 2013, Kiev, Ukraine
"JIT compiler overview" @ JEEConf 2013, Kiev, Ukraine
 
Bytecode Manipulation with a Java Agent and Byte Buddy
Bytecode Manipulation with a Java Agent and Byte BuddyBytecode Manipulation with a Java Agent and Byte Buddy
Bytecode Manipulation with a Java Agent and Byte Buddy
 
G1 collector and tuning and Cassandra
G1 collector and tuning and CassandraG1 collector and tuning and Cassandra
G1 collector and tuning and Cassandra
 
SPARKNaCl: A verified, fast cryptographic library
SPARKNaCl: A verified, fast cryptographic librarySPARKNaCl: A verified, fast cryptographic library
SPARKNaCl: A verified, fast cryptographic library
 
Tuning Java GC to resolve performance issues
Tuning Java GC to resolve performance issuesTuning Java GC to resolve performance issues
Tuning Java GC to resolve performance issues
 
Triton and Symbolic execution on GDB@DEF CON China
Triton and Symbolic execution on GDB@DEF CON ChinaTriton and Symbolic execution on GDB@DEF CON China
Triton and Symbolic execution on GDB@DEF CON China
 
Performance van Java 8 en verder - Jeroen Borgers
Performance van Java 8 en verder - Jeroen BorgersPerformance van Java 8 en verder - Jeroen Borgers
Performance van Java 8 en verder - Jeroen Borgers
 
Java 8 selected updates
Java 8 selected updatesJava 8 selected updates
Java 8 selected updates
 
[DLHacks]Introduction to ChainerCV
[DLHacks]Introduction to ChainerCV[DLHacks]Introduction to ChainerCV
[DLHacks]Introduction to ChainerCV
 
JVM and Java Performance Tuning | JVM Tuning | Java Performance
JVM and Java Performance Tuning | JVM Tuning | Java PerformanceJVM and Java Performance Tuning | JVM Tuning | Java Performance
JVM and Java Performance Tuning | JVM Tuning | Java Performance
 
JVM Under the Hood
JVM Under the HoodJVM Under the Hood
JVM Under the Hood
 

More from Monica Beckwith

The ilities of software engineering.pptx
The ilities of software engineering.pptxThe ilities of software engineering.pptx
The ilities of software engineering.pptxMonica Beckwith
 
Applying Concurrency Cookbook Recipes to SPEC JBB
Applying Concurrency Cookbook Recipes to SPEC JBBApplying Concurrency Cookbook Recipes to SPEC JBB
Applying Concurrency Cookbook Recipes to SPEC JBBMonica Beckwith
 
Intro to Garbage Collection
Intro to Garbage CollectionIntro to Garbage Collection
Intro to Garbage CollectionMonica Beckwith
 
OpenJDK Concurrent Collectors
OpenJDK Concurrent CollectorsOpenJDK Concurrent Collectors
OpenJDK Concurrent CollectorsMonica Beckwith
 
Java Performance Engineer's Survival Guide
Java Performance Engineer's Survival GuideJava Performance Engineer's Survival Guide
Java Performance Engineer's Survival GuideMonica Beckwith
 
Garbage First Garbage Collector (G1 GC) - Migration to, Expectations and Adva...
Garbage First Garbage Collector (G1 GC) - Migration to, Expectations and Adva...Garbage First Garbage Collector (G1 GC) - Migration to, Expectations and Adva...
Garbage First Garbage Collector (G1 GC) - Migration to, Expectations and Adva...Monica Beckwith
 

More from Monica Beckwith (9)

The ilities of software engineering.pptx
The ilities of software engineering.pptxThe ilities of software engineering.pptx
The ilities of software engineering.pptx
 
A G1GC Saga-KCJUG.pptx
A G1GC Saga-KCJUG.pptxA G1GC Saga-KCJUG.pptx
A G1GC Saga-KCJUG.pptx
 
ZGC-SnowOne.pdf
ZGC-SnowOne.pdfZGC-SnowOne.pdf
ZGC-SnowOne.pdf
 
QCon London.pdf
QCon London.pdfQCon London.pdf
QCon London.pdf
 
Applying Concurrency Cookbook Recipes to SPEC JBB
Applying Concurrency Cookbook Recipes to SPEC JBBApplying Concurrency Cookbook Recipes to SPEC JBB
Applying Concurrency Cookbook Recipes to SPEC JBB
 
Intro to Garbage Collection
Intro to Garbage CollectionIntro to Garbage Collection
Intro to Garbage Collection
 
OpenJDK Concurrent Collectors
OpenJDK Concurrent CollectorsOpenJDK Concurrent Collectors
OpenJDK Concurrent Collectors
 
Java Performance Engineer's Survival Guide
Java Performance Engineer's Survival GuideJava Performance Engineer's Survival Guide
Java Performance Engineer's Survival Guide
 
Garbage First Garbage Collector (G1 GC) - Migration to, Expectations and Adva...
Garbage First Garbage Collector (G1 GC) - Migration to, Expectations and Adva...Garbage First Garbage Collector (G1 GC) - Migration to, Expectations and Adva...
Garbage First Garbage Collector (G1 GC) - Migration to, Expectations and Adva...
 

Recently uploaded

WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Servicegiselly40
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxOnBoard
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...shyamraj55
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...gurkirankumar98700
 

Recently uploaded (20)

WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
CNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of ServiceCNv6 Instructor Chapter 6 Quality of Service
CNv6 Instructor Chapter 6 Quality of Service
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Maximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptxMaximizing Board Effectiveness 2024 Webinar.pptx
Maximizing Board Effectiveness 2024 Webinar.pptx
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
Automating Business Process via MuleSoft Composer | Bangalore MuleSoft Meetup...
 
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
Kalyanpur ) Call Girls in Lucknow Finest Escorts Service 🍸 8923113531 🎰 Avail...
 

JIT and GC optimizations for performance