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
80
10% Happier
nikem
0
80
Where is my memory
nikem
0
510
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
[PyCon KR 2026] More Variants, More Diversity for AI Accelerators
achimnol
0
110
【デモ】Kiroで体験する仕様駆動開発|設計からコーディングまでAIと進める開発フロー
cmkudo
0
370
Dockerfile CMD for Node.js
grazie1999
0
120
VibeCodingからAgenticWorkflowへ
starfish719
0
820
仕様書を書く前にハーネスを作る - Agent Native開発は「探索を速く、判定を固く」
gotalab555
4
1.8k
実装をデザインガイドラインに追従させるための取り組み / 260731-dip-mosh-design-system
dachi023
0
7.7k
170k Jobs a Day on GKE: Scaling Mercari's CI Platform - and What's Next for AI-Native Development
junyaokabe
0
120
Claude CodeとAgentCore Gatewayを繋ぐ際の認証認可 / Authentication and authorization when connecting Claude Code with AgentCore Gateway
har1101
2
370
生成AIで帳票OCRが「簡単に」作れる時代になった?
kon_shou
0
1.2k
Building a Meta Ray-Ban display app
akkeylab
0
180
プロポーザルを書いてもらう
pvcresin
0
580
PostgreSQL 18で考えるUUID主キー
kazuhiro1982
0
500
Featured
See All Featured
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
2
3.8k
Ecommerce SEO: The Keys for Success Now & Beyond - #SERPConf2024
aleyda
1
2.1k
Unsuck your backbone
ammeep
672
58k
Designing for Performance
lara
611
70k
How to build a perfect <img>
jonoalderson
1
5.9k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
64
56k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.7k
How STYLIGHT went responsive
nonsquared
100
6.2k
Ethics towards AI in product and experience design
skipperchong
2
350
HU Berlin: Industrial-Strength Natural Language Processing with spaCy and Prodigy
inesmontani
PRO
0
660
Ruling the World: When Life Gets Gamed
codingconduct
0
310
Navigating the Design Leadership Dip - Product Design Week Design Leaders+ Conference 2024
apolaine
2
400
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.