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
N=1から解き明かすAWS ソリューションアーキテクトの魅力
kiiwami
0
130
デスクトップだけじゃないUbuntu
mtyshibata
0
110
JEDAI Meetup! Databricks AI/BI概要
databricksjapan
0
110
Oracle Cloud Infrastructure:2025年2月度サービス・アップデート
oracle4engineer
PRO
1
220
『衛星データ利用の方々にとって近いようで触れる機会のなさそうな小話 ~ 衛星搭載ソフトウェアと衛星運用ソフトウェア (実物) を動かしながらわいわいする編 ~』 @日本衛星データコミニティ勉強会
meltingrabbit
0
150
飲食店予約台帳を支えるインタラクティブ UI 設計と実装
siropaca
7
1.8k
利用終了したドメイン名の最強終活〜観測環境を育てて、分析・供養している件〜 / The Ultimate End-of-Life Preparation for Discontinued Domain Names
nttcom
2
200
あれは良かった、あれは苦労したB2B2C型SaaSの新規開発におけるCloud Spanner
hirohito1108
2
610
インフラをつくるとはどういうことなのか、 あるいはPlatform Engineeringについて
nwiizo
5
2.6k
表現を育てる
kiyou77
1
210
現場の種を事業の芽にする - エンジニア主導のイノベーションを事業戦略に装着する方法 -
kzkmaeda
2
2.1k
個人開発から公式機能へ: PlaywrightとRailsをつなげた3年の軌跡
yusukeiwaki
11
3k
Featured
See All Featured
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
33
2.8k
GraphQLとの向き合い方2022年版
quramy
44
13k
ピンチをチャンスに:未来をつくるプロダクトロードマップ #pmconf2020
aki_iinuma
114
50k
Scaling GitHub
holman
459
140k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.6k
Git: the NoSQL Database
bkeepers
PRO
427
64k
Making the Leap to Tech Lead
cromwellryan
133
9.1k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Art, The Web, and Tiny UX
lynnandtonic
298
20k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Rails Girls Zürich Keynote
gr2m
94
13k
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