Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Garbage Collection of Oracle JDK6
Search
Kengo TODA
June 13, 2012
Technology
1
150
Garbage Collection of Oracle JDK6
A simple introduction for GC, mainly about Oracle JDK6.
Kengo TODA
June 13, 2012
Tweet
Share
More Decks by Kengo TODA
See All by Kengo TODA
JavaとGroovyで書かれたGradleプラグインをKotlinで書き直した話 / Converted a Gradle plugin from Groovy&Java to Kotlin
eller86
0
840
ヒューマンスキル / The Humanskills
eller86
0
500
医療機関向けシステムの信頼性 / Reliability of systems for medical institutions
eller86
0
270
Server-side Kotlinを使うスタートアップでどんなDetektルールが育ったか / Detekt rules made in start-up working with Server-side Kotlin
eller86
0
1.2k
Java開発者向けのKotlin Gradleビルドスクリプト入門 / Gradle Build Script in Kotlin 101
eller86
1
1.4k
Goodbye JSR305, Hello JSpecify!
eller86
2
4.5k
Java8〜16におけるバイトコード生成の変化 / Changes of Bytecode Generation from Java 8 to 16
eller86
4
4k
Javaプログラミングの体験向上に関する活動 / DX enhancement around Java programming
eller86
0
3.6k
静的解析ツールで生産性向上
eller86
1
840
Other Decks in Technology
See All in Technology
プレイドにおけるDatadog APMの活用方法
plaidtech
PRO
2
120
Classmethod Odyssey 登壇資料
yamahiro
0
390
テストケースの自動生成に生成AIの導入を試みた話と生成AIによる今後の期待
shift_evolve
0
190
AWSでRAGを作る法方
sonoda_mj
1
140
可視化プラットフォームGrafanaの基本と活用方法の全て
hamadakoji
0
230
エンジニアの生存戦略 〜クラウド潮流の経験から紐解く技術トレンドのメカニズムと乗りこなし方〜
shimy
9
1.9k
DevIO2024_レガシー運用からの脱却 -クラウド活用の実践事例とベストプラクティス-
jun2882
0
210
20240725 LLMによるDXのビジョンと、今何からやるべきか @Azure OpenAI Service Dev Day
nrryuya
3
1.2k
シフトレフトで挑む セキュリティの生産性向上
sekido
PRO
0
270
dxd2024-生成AIに振り回された3か月間の成功と失敗/dxd2024-link-and-motivation
lmi
2
260
コンテナ・K8s研修 - 前半 コンテナ基礎・ハンズオン【MIXI 24新卒技術研修】
mixi_engineers
PRO
0
170
ABEMAにおけるLLMを用いたコンテンツベース推薦システム導入と効果検証
cyberagentdevelopers
PRO
1
750
Featured
See All Featured
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
129
32k
A better future with KSS
kneath
231
17k
Build your cross-platform service in a week with App Engine
jlugia
227
17k
Building a Modern Day E-commerce SEO Strategy
aleyda
25
6.7k
Learning to Love Humans: Emotional Interface Design
aarron
269
39k
Code Review Best Practice
trishagee
58
16k
Ruby is Unlike a Banana
tanoku
96
10k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
13
430
The Power of CSS Pseudo Elements
geoffreycrofte
64
5.2k
5 minutes of I Can Smell Your CMS
philhawksworth
200
19k
Visualization
eitanlees
139
14k
Designing on Purpose - Digital PM Summit 2013
jponch
113
6.6k
Transcript
GarbageCollection Don’t you need to pay attention for memory? Kengo
TODA 2012/June/13 126݄12Ր༵
Summary for previous Object size = size of header +
Σ (field). Array requires contiguous space to store. Why we have to care? 126݄12Ր༵
Answer: Generational Garbage Collection cannot handle too long contiguous space
effectively 126݄12Ր༵
What’s GC? Memory management algorithm The reason why we don’t
have to `free` in Java 126݄12Ր༵
Type of GC Mark and sweep garbage collection Copying garbage
collection Generational garbage collection Garbage first garbage collection (G1GC) etc. 126݄12Ր༵
Currently we use... Generational garbage collection with copying GC for
new generation with mark & sweep GC for old generation 126݄12Ր༵
What is Generation? Divide heap into 4 areas Tenured area
is ‘old generation’ and others belongs to ‘new generation’ Survivor 1 Survivor 2 Eden Tenured new old 126݄12Ր༵
What is Generation? All data are stored in Eden area
at 1st Data is moved by GC Survivor 1 Survivor 2 Eden Tenured new old 126݄12Ր༵
What is Generation? Object data cannot span border If there
is no space to put data in specified area, we have to boot GC to keep space Survivor 1 Survivor 2 Eden Tenured new old NG OK OK 126݄12Ր༵
key point Long contiguous space is danger because Throw OOME
if it’s longer than heap area (not whole heap size) Boot GC and slow JVM 126݄12Ր༵
References The Java™ Virtual Machine Specification Sensible Sanitation -- Understanding
the IBM Java Garbage Collector 126݄12Ր༵