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
Heap, off you go
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Nikita Salnikov-Tarnovski
May 23, 2015
Programming
1.3k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Heap, off you go
Nikita Salnikov-Tarnovski
May 23, 2015
More Decks by Nikita Salnikov-Tarnovski
See All by Nikita Salnikov-Tarnovski
Project clarity - random rant from an old engineer
nikem
0
100
How Plumbr uses Kafka
nikem
0
110
Introduction to Druid
nikem
0
890
Deceived by monitoring
nikem
0
79
10% Happier
nikem
0
80
Where is my memory
nikem
0
500
First steps in GC tuning
nikem
0
1.6k
I bet you have a memory leak
nikem
1
170
Plumbing Memory Leaks
nikem
1
150
Other Decks in Programming
See All in Programming
【やさしく解説 設計編 #0】DDDのコード、読めるのに分からない人へ
panda728
PRO
1
160
代数的データ型って何が嬉しいの? #frontend_phpcon_do
kajitack
8
3.9k
AI時代のUIはどこへ行く?その2!
yusukebe
22
7.7k
Semantic Version 単位で戦略を柔軟に変えて、パッケージアップデートを自動化する
daitasu
1
330
Vite+ Unified Toolchain for the Web
naokihaba
0
410
jQueryをバージョンアップする前に使いたいjQuery Migrate
matsuo_atsushi
0
630
なぜ型を書くのか? TSKaigi2026で改めて考える #tskaigi_smarthr
kajitack
0
180
SREは、MCPとSRE Agentをこう使え!
kazumax55
0
130
Spring Security 実践 ─ GraphQL APIで実務に役立つ 認証・認可 を学ぶ
wagyu
0
270
AI がコードを書く時代における新卒エンジニアの仕事風景 (2026) / New Graduate Engineers in the Era of AI Coding (2026)
sushichan044
0
190
AI駆動開発を妨げる技術的負債の解消アプローチ / ai-refactoring-approach
minodriven
17
8.4k
Performance Engineering for Everyone
elenatanasoiu
0
250
Featured
See All Featured
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
Designing Experiences People Love
moore
143
24k
How to Get Subject Matter Experts Bought In and Actively Contributing to SEO & PR Initiatives.
livdayseo
0
150
Taking LLMs out of the black box: A practical guide to human-in-the-loop distillation
inesmontani
PRO
3
2.3k
The Anti-SEO Checklist Checklist. Pubcon Cyber Week
ryanjones
0
180
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
200
My Coaching Mixtape
mlcsv
0
160
A Modern Web Designer's Workflow
chriscoyier
698
190k
Information Architects: The Missing Link in Design Systems
soysaucechin
0
1k
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
35
3.5k
XXLCSS - How to scale CSS and keep your sanity
sugarenia
250
1.3M
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
340
Transcript
Heap, off you go
Who am I • Nikita Salnikov-Tarnovski • Founder and Master
Developer from • We solve performance problems • @iNikem, http://github.com/iNikem/offheap
JVM and memory • One of the reasons Java became
so popular back in 90s is automatic memory management • No malloc and free • You just create objects and let JVM handle all the rest
Garbage goes to Heap
Garbage Collector
Garbage Collector • A subsystem of JVM • He handles
garbage • In a “transparent” way • Or so they thought
When much is too much • If you produce too
much garbage, cleaning it is expensive • More objects - more time to clean
Solution? • Litter where no one sees :) • Off
the heap • Which means in native memory
Why is this good? • You can throw things around
all the way you want • And no once will say a word
But… • You still have to clean things yourself eventually
• You have to break your objects into tiny flat pieces
Flat object public class Trade { public int ticket; public
int amount; public int price; public boolean buy; }
Stop talking! Show me the code! • Demo time
Solving performance problems is hard. We don’t think it needs
to be.