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
Compact GC Head
Search
INADA Naoki
June 25, 2018
Technology
0
8.1k
Compact GC Head
Python の GCヘッダを減らすために今挑戦していることを紹介します。
INADA Naoki
June 25, 2018
Tweet
Share
More Decks by INADA Naoki
See All by INADA Naoki
Python 3 and Unicode
methane
0
88
New dict implementation in Python 3.6 (KLab Tech Meetup 2017-09-04)
methane
1
700
New dict implementation in Python 3.6
methane
2
1.5k
Other Decks in Technology
See All in Technology
いまからでも遅くない!コンテナでWebアプリを動かしてみよう!コンテナハンズオン編
nomu
0
180
Global Databaseで実現するマルチリージョン自動切替とBlue/Greenデプロイ
j2yano
0
160
スクラムというコンフォートゾーンから抜け出そう!プロジェクト全体に目を向けるインセプションデッキ / Inception Deck for seeing the whole project
takaking22
3
130
User Story Mapping + Inclusive Team
kawaguti
PRO
2
290
EDRの検知の仕組みと検知回避について
chayakonanaika
12
5.3k
大規模アジャイルフレームワークから学ぶエンジニアマネジメントの本質
staka121
PRO
3
1.6k
Amazon Athenaから利用時のGlueのIcebergテーブルのメンテナンスについて
nayuts
0
110
Introduction to OpenSearch Project - Search Engineering Tech Talk 2025 Winter
tkykenmt
2
220
IoTシステム開発の複雑さを低減するための統合的アーキテクチャ
kentaro
1
130
【内製開発Summit 2025】イオンスマートテクノロジーの内製化組織の作り方/In-house-development-summit-AST
aeonpeople
2
1.1k
エンジニア主導の企画立案を可能にする組織とは?
recruitengineers
PRO
1
310
What's new in Go 1.24?
ciarana
1
120
Featured
See All Featured
How to Think Like a Performance Engineer
csswizardry
22
1.4k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
580
Statistics for Hackers
jakevdp
797
220k
The Language of Interfaces
destraynor
156
24k
Building an army of robots
kneath
303
45k
Keith and Marios Guide to Fast Websites
keithpitt
411
22k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
175
52k
KATA
mclloyd
29
14k
Code Reviewing Like a Champion
maltzj
521
39k
The Art of Delivering Value - GDevCon NA Keynote
reverentgeek
11
1.3k
[Rails World 2023 - Day 1 Closing Keynote] - The Magic of Rails
eileencodes
33
2.1k
Code Review Best Practice
trishagee
67
18k
Transcript
$PNQBDU 1Z($@)FBE UDGNNFFUVQ *OBEB/BPLJ !NFUIBOF
͓લ୭Α w Ҵాɹ࠸ !NFUIBOF w ,-BC*OD w 1ZUIPO$PSF%FWFMPQFS w
$PNQBDU0SEFSFE%JDU w .Z42-%SJWFST (P 1ZUIPO
1ZUIPOͷ($ wࢀরΧϯτ w॥ࢀর($ɹˡࠓͷ wࢼݧআΞϧΰϦζϜ w ʮΨϕʔδίϨΫγϣϯ ࣗಈతϝϞϦཧΛߏ͢Δཧͱ࣮ʯ IUUQTXXXBNB[PODPKQEQ
ࢼݧআͷ֓ཁ w ΦϒδΣΫτͷू߹Λ८ճͯ͠ɺू߹ͷΦϒδΣΫτؒ ͷࢀরͷ͚ͩࢀরΧϯτΛݮΒͯ͠ΈΔ w ࢀরΧϯτ͕ͬͯΔΦϒδΣΫτ֎͔Βࢀর͞Εͯ ͍Δˠϧʔτʢੜଘʣ w ϚʔΫˍεΠʔϓͷΑ͏ʹɺϧʔτ͔Β࠶ؼతʹੜଘΦϒ δΣΫτΛܾఆ
1ZUIPOͷ࣮ ϫʔυ _gc_head *gc_next; _gc_head *gc_prev; ssize_t gc_refcnt;
HD@OFYU HD@QSFW w ํϦϯΫϦετ w ֤ੈͷΦϒδΣΫτͷू߹Λཧ w ҙͷΦϒδΣΫτΛ0 Ͱ֎ͤΔ
HD@SFGDOU w ࢼݧআ༻ࢀরΧϯτ w ෛͷఆ w 53"$,&% ΑΓݹ͍ੈͷΦϒδΣΫτ
w 6/53"$,&% ཧ֎ʣ w 5&/5"5*7&-:@6/3&"$)"#-& আީิ w 3&"$)"#-& ੜଘ֬ఆ w CJUΛผ్ͷϑϥάͰར༻
None
ϚʔΫϑΣʔζ w HDMJTUΛ८ճͯ͠HD@SFGDOU͕ w VOSFBDIBCMFϦετʹҠಈ আީิ w ੜଘ֬ఆɺΦϒδΣΫτͷࢀরઌνΣοΫ w
ࢀরઌ͕VOSFBDIBCMFͳΒHDMJTUͷඌʹ෮ؼ w HDMJTUͷऴʹ౸ୡͨ͠ʹ࠶ؼతͳϚʔΫྃ
$PNQBDU($)FBE wHD@QSFWͱHD@SFGDOUͰϝϞϦڞ༗ w HD@QSFWϦετ͔ΒཁૉΛআ͢ΔͨΊ w ࢼݧআதॱํ८ճ͚ͩͰ͍͍ w ϚʔΫϑΣʔζͰHDMJTU VOSFBDIBCMFؒҠಈ w
ϋοΫͰ͖ͦ͏ʁ
None
)BDLJOHNBSL w ॳظঢ়ଶHD@OFYUͱHD@SFGDOUͷΈͷ୯ํϦϯΫϦ ετ w ҰͭखલΛ֮͑ͳ͕Β८ճ w ੜଘ֬ఆͳΒHD@SFGDOUΛ௵ͯ͠HD@QSFWQSFW w VOSFBDIBCMFʹҠಈ͢Δͱ͖HD@SFGDOUΛ௵͢
w ෮ؼ࣌HD@SFGDOUͰ୯ํϦϯΫϦετԽ
ࢀরઌʹύλʔϯ͋Δɻ Ͳ͏ݟ͚Δ͔ɻ
HD@SFGDOU ࠶ w ࢼݧআ༻ࢀরΧϯτ w ෛͷఆ w 53"$,&%
ΑΓݹ͍ੈͷΦϒδΣΫτ w 6/53"$,&% ཧ֎ʣ w 5&/5"5*7&-:@6/3&"$)"#-& আީิ w 3&"$)"#-& ੜଘ֬ఆ w CJUΛผ్ͷϑϥάͰར༻
ঢ়ଶμΠΤοτ w 53"$,&% 6/53"$,&% w HDMJTUʹೖ͍ͬͯΔ͔Ͳ͏͔ͰϏοτඞཁ w HD@OFYU/6--Ͱཧ͞ΕͯΔ͔அ w 5&/5"5*7&-:@6/3&"$)"#-&
3&"$)"#-& w Ϗοτඞཁ w CJUΛผ్ͷϑϥάͰར༻ w ߹ܭϏοτඞཁ
5BHHFE1PJOUFS w ϙΠϯλมʹೖΔΞυϨεͷ͏ͪɺ͕ʢओʹʹʣݻ ఆ͍ͯ͠ΔϏοτΛϑϥάͳͲʹར༻͢Δ w ϑϥάΛͬͯϙΠϯλ͡Όͳ͍ΛೖΕΔ w ͍จࣈྻ CJUͳΒόΠτ·Ͱʁ
w w ྨࣅͷٕज़ුಈখͷ/B/ͷੑΛͬͨ /B/#PYJOH
ΞυϨεͷະ༻CJU w Y@ͷΞυϨε࣮࣭ͬͯόΠτͰʁ w ࠷ۙόΠτʹ֦ு͞ΕͨΒ͍͠ w ্ҐϏοτΛ৮Δͷকདྷੑʹෆ҆ w ͦͦΞʔΩґଘ w
.BMMPD݁Ռ͕όΠτBMJHOFE w ԼҐCJU௵ͤΔ w ϚΠφʔͳΞʔΩˍNBMMPD࣮Ͱෆ҆
HD@QSFWHD@SFGT HD@QSFWHD@SFGT 6OSFBDIBCMF $PMMFDUJOH طଘϑϥά
ࢀরΧϯτͷ্ք w HD@SFGDOU͕Φʔόʔϑϩʔ͠ͳ͍͔ߟ͑Δ w Ϣʔβʔۭؒͷ֤ϙΠϯλ͕ͭͷࢀরΛ࡞Δ w ΞυϨεۭ͕ؒCJUͰɺϙΠϯλ͕CZUFͳΒɺϙΠϯλ ͷͷ্ք?
w 0, w ΞυϨεۭ͕ؒCJUͰɺϙΠϯλ͕CZUFͳΒɺϙΠϯλ ͷ্ք? w CJU༨ͬͯͳ͍ w Ϣʔβʔۭؒී௨ʹ(#ʢCJUʣʹͳΔ
݁ w CJUڥͳΒ w ࢀরΧϯλ࣮֬ʹCJU༨ͬͯΔ w ΄΅࣮֬ʹϙΠϯλͷԼҐCJUΘΕͳ͍ w CJUڥͩͱ w
ࢀরΧϯτCJU༨ͬͯͳ͍ w CZUFΞϥΠϯͷNBMMPD࣮ͷةݥੑ͕૿͑Δ
ࠓޙͷํ w HD@OFYUͷԼҐCJUར༻͢Δ w HD@QSFWΛVJOU@Uʹ͢Δ w $PNQBDU࣮ͱطଘ࣮ΛΓସ͑Δ w CJUڥͰσϑΥϧτͰैདྷ࣮
ਓࡐืू w$1ZUIPOͷ։ൃʹڵຯ͕͋Δਓ wQZUIPOKQͷEJTDPSEαʔόʔʹ DPSFEFWνϟϯωϧ࡞Γ·ͨ͠ɻ wটίʔυ[VNDX