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
630
ヒューマンスキル / The Humanskills
eller86
0
480
医療機関向けシステムの信頼性 / Reliability of systems for medical institutions
eller86
0
250
Server-side Kotlinを使うスタートアップでどんなDetektルールが育ったか / Detekt rules made in start-up working with Server-side Kotlin
eller86
0
960
Java開発者向けのKotlin Gradleビルドスクリプト入門 / Gradle Build Script in Kotlin 101
eller86
1
1.3k
Goodbye JSR305, Hello JSpecify!
eller86
2
4.3k
Java8〜16におけるバイトコード生成の変化 / Changes of Bytecode Generation from Java 8 to 16
eller86
4
3.8k
Javaプログラミングの体験向上に関する活動 / DX enhancement around Java programming
eller86
0
3.6k
静的解析ツールで生産性向上
eller86
1
790
Other Decks in Technology
See All in Technology
レガシーをぶっ壊せ。AEONで始めるDevRelの話 / Qiita Night 2024-2-22
aeonpeople
3
1.3k
リテール金融(キャッシュレス・ネット銀行・ネット証券)の競争環境と経済圏
8maki
0
1.3k
Java EE/Jakarta EEの現状と将来―クラウドネイティブ時代にJava EEは対応できるのか?―
takakiyo
1
170
FrontDoorとWebAppsを組み合わせた際のリダイレクト処理の注意点
kenichirokimura
1
530
現代CSSフレームワークの内部実装とその仕組み
poteboy
7
3.6k
地理空間データ可視化・解析・活用ソリューション Pacific Spatial Solutions (PSS)
pacificspatialsolutions
0
300
VS CodeでAWSを操作しよう
smt7174
8
1.7k
私が trocco を推す理由
__allllllllez__
1
260
MLOpsの「壁」を乗り越える、LINEヤフーの Data Quality as Code
lycorptech_jp
PRO
5
540
Tellus の衛星データを見てみよう #mf_fukuoka
kongmingstrap
0
220
Compose Compiler Metricsを使った実践的なコードレビュー
tomorrowkey
1
220
開発パフォーマンスを最大化するための開発体制
ham0215
2
450
Featured
See All Featured
What’s in a name? Adding method to the madness
productmarketing
PRO
16
2.6k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
60
14k
A better future with KSS
kneath
231
16k
From Idea to $5000 a Month in 5 Months
shpigford
377
45k
Become a Pro
speakerdeck
PRO
11
4.5k
YesSQL, Process and Tooling at Scale
rocio
164
13k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
352
28k
Gamification - CAS2011
davidbonilla
76
4.6k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
501
140k
10 Git Anti Patterns You Should be Aware of
lemiorhan
648
58k
Reflections from 52 weeks, 52 projects
jeffersonlam
345
19k
Building Better People: How to give real-time feedback that sticks.
wjessup
355
18k
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Ր༵