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
令和最新版 Ruby プロファイラ "Pf2" のご紹介
Search
osyoyu
April 24, 2024
Technology
0
540
令和最新版 Ruby プロファイラ "Pf2" のご紹介
osyoyu
April 24, 2024
Tweet
Share
More Decks by osyoyu
See All by osyoyu
Regional.rb and the Tokyo Metropolis
osyoyu
0
100
都市伝説バスターズ「WebアプリのボトルネックはDBだから言語の性能は関係ない」 - Kaigi on Rails 2024
osyoyu
27
15k
プロファイラ開発者と見る「推測するな、計測せよ」 - YAPC::Hakodate 2024
osyoyu
6
740
Rubyのパフォーマンスプロファイリングの改善 / Enhancing performance profiling for Ruby
osyoyu
2
820
RubyKaigi Decks
osyoyu
0
96
The depths of profiling Ruby - RubyKaigi 2024
osyoyu
3
5.7k
今年のRubyKaigiはProfiler Year🤘
osyoyu
0
1.2k
ちょっといい感じの Ruby プロファイラがほしい (RubyKaigi 2023 follow up)
osyoyu
1
390
Hacking and Profiling Ruby for Performance - RubyKaigi 2023
osyoyu
0
160
Other Decks in Technology
See All in Technology
Amazon S3 Tablesと外部分析基盤連携について / Amazon S3 Tables and External Data Analytics Platform
nttcom
0
130
人はなぜISUCONに夢中になるのか
kakehashi
PRO
6
1.6k
Developer Summit 2025 [14-D-1] Yuki Hattori
yuhattor
19
6.2k
Oracle Base Database Service 技術詳細
oracle4engineer
PRO
6
57k
転生CISOサバイバル・ガイド / CISO Career Transition Survival Guide
kanny
3
980
Swiftの “private” を テストする / Testing Swift "private"
yutailang0119
0
130
Classmethod AI Talks(CATs) #17 司会進行スライド(2025.02.19) / classmethod-ai-talks-aka-cats_moderator-slides_vol17_2025-02-19
shinyaa31
0
120
2024.02.19 W&B AIエージェントLT会 / AIエージェントが業務を代行するための計画と実行 / Algomatic 宮脇
smiyawaki0820
13
3.3k
「海外登壇」という 選択肢を与えるために 〜Gophers EX
logica0419
0
700
RSNA2024振り返り
nanachi
0
580
目の前の仕事と向き合うことで成長できる - 仕事とスキルを広げる / Every little bit counts
soudai
24
7.1k
Goで作って学ぶWebSocket
ryuichi1208
0
180
Featured
See All Featured
How GitHub (no longer) Works
holman
314
140k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
174
51k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
Building Flexible Design Systems
yeseniaperezcruz
328
38k
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
507
140k
Reflections from 52 weeks, 52 projects
jeffersonlam
348
20k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
356
29k
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
9
440
Fantastic passwords and where to find them - at NoRuKo
philnash
51
3k
Designing on Purpose - Digital PM Summit 2013
jponch
117
7.1k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
6
550
Transcript
ྩ࠷৽൛3VCZϓϩϑΝΠϥ 1Gͷ͝հ
Q!PTZPZV %BJTVLF"SJUPNP PTZPZV 7*4"ϓϦΧʮ#ʯΛεϚʔτόϯΫ ג Ͱ ͭͬͯ͘·͢ ࠓ࠷ۙͷ׆ಈͷհͰ͢
ͦͷલʹ ʮϓϩϑΝΠϥʯ ຊޠͰʮੑೳղੳπʔϧʯ ಈ࡞͢ΔϓϩάϥϜʹΞλονͯ͠ɺ ͍ՕॴΛൃݟ͢Δ͜ͱ͕Ͱ͖Δ 3VCZͰ4UBDLQSPG SCTQZ SVCZQSPG ͕༗໊
1Gͷ͝հ HJUIVCDPNPTZPZVQG
جຊͷϏϡʔ 5ISFBEϦετ 'MBNFHSBQI
ϏδϡΞϥΠζ $BMM5SFF *OWFSUFE$BMM5SFF 'MBNFHSBQI
$BMM5SFF ໊ؔ DBMMUSFF ݺͼग़͠ճ
*OWFSUFE$BMM5SFF ݺͼग़͠ճॱ
1GΛ௨ͨ͠3VCZϓϩάϥϜͷ࣮ߦ QGTFSWFΛ͚ͭͯSVCZΛ࣮ߦ͢Δ͜ͱͰ λʔήοτ͕ϓϩϑΝΠϧ͞ΕΔ ʢίʔυΛฤू͢Δඞཁͳ͠ʂʣ
࣮ફ1GΛͬͨߴԽ
ߴԽͷجຊ ϓϩϑΝΠϥΛͬͨ ͍ཧ༝ͷൃݟ ϓϩάϥϜΛॻ͘
࣮ફ1GΛͬͨߴԽ 5IF0OF#JMMJPO3PX$IBMMFOHFʹઓ ߦ ԯߦ ͷςΩετϑΝΠϧΛॲཧ͢Δ
5IF0OF#JMMJPO3PX$IBMMFOHF *OQVU ࢢͷؾԹͷ؍ଌσʔλԯߦ ʢࢢ͝ͱʹෳͷ؍ଌ͕ଘࡏʣ Tarui;-11.0 Cunupia;-85.0 Honjō;56.6 Navalcarnero;72.2 Escazú;-5.6
Babylon;10.4 Gouvêa;57.9 Makri;-63.1 Châlons-en-Champagne;89.9 Santo Antônio do Sudoeste;20.4 (ҎԼ9,999,999,990ߦ) { ..., Bournville=-94.1;3.2;99.0, Tarui=-99.0;-3.8;99.9, Tokyo=-95.5;-2.0;97.2, York= ... } 0VUQVU ࢢ͝ͱͷNJONFBONBYͷ
ग़యɿXXXXXXXXXXX ಡΈࠐΈύʔτʢ্ʣͱ ܗग़ྗύʔτʢԼʣͰߏ Θ͟ͱ͘ॻ͍ͨΓ͍ͯ͠ͳ͍ͭΓ TVTFS TTZTUFN DQV UPUBM ·ͣγϡοͱ࣮
؆୯
·ͣ'MBNFHSBQIΛ֬ೝ ͋Δϝιουͷԣ෯͕ྦྷܭ࣮ߦ࣌ؒΛࣔ͢ 4USJOHTQMJU͕Ұ൪ॏ͍
·ͣ'MBNFHSBQIΛ֬ೝ $ϑϨʔϜͷදࣔΛ༗ޮʹ͢Δͱ ӅΕͨ3VCZϝιου͕ݟ͑Δ SC@IBTI@BSFG)BTI<>
ग़యɿXXXXXXXXXXX ଘࡏ͠ͳ͍Ωʔͷͱ͖ͷॲཧΛ)BTIOFX ͷػೳʹͤΔ TVTFS TTZTUFN DQV UPUBM ͷվળ )BTI<>ΛݮΒͦ͏
SC@IBTI@BSFGͱ)BTI<>ͷରԠΛௐΔํ๏ SVCZSVCZͷίʔυΛಡΉͷ͕ Ұ൪࣮֬ʜʜ͔ʜʜ $IBU(15Ͱ·͊͑ͯ͘ΕΔ ʢͦͦؒ͜͜ҧ͑Δʣ IBTIDͷ*OJU@IBTI ΑΓ ରԠ͢ΔSC@EF fi
OF@NFUIPEΛݟ͚ͭΒΕΔ
ͦͷଞ$TUBDLΛݟͯஅͰ͖Δ͜ͱ w SC@FD@TUS@SFTVSSFDU w # frozen_string_literal: trueͰফ໓ w
GSP[FO@TUSJOH@MJUFSBMΛઃఆ͢Δ͚ͩͰ͘ͳͬͨ w WN@DBMM@DGVOD@XJUI@GSBNF w ͍ΘΏΔ$֦ுͰ࣮͞Εͨϝιουͷݺͼग़͠ w ελοΫͷ্ԼΛݟͯஅ w ($ؔ w ($Ͱ͢
ຊ࣭ʹ͖߹͏ ࣮ߦ࣌ؒͷ͙Β͍͕4USJOHDIPNQ 4USJOHTQMJUʹඅ͞Ε͍ͯΔ ৽͍͠4USJOH࡞ࣺͬͯͯͯ($ʹෛՙ Λ͔͚͍ͯΔ 4USJOHDIPNQ TQMJUΛͳ͘͢
ग़యɿXXXXXXXXXXX DIPNQ͕ແବͳ4USJOHΦϒδΣΫτΛ ࡞Βͳ͘ͳΔ͠ɺMPPLGPSXBSE͚ͩͰ ॲཧͰ͖ͯ͘ͳΔͣʂ TVTFS TTZTUFN DQV UPUBM ഒ͙Β͍͘ͳͬͨ
HFUDͰஔ͖͑Δ
·ͣ'MBNFHSBQIΛ֬ೝ *0HFUDΊͬͪΌSC@TUS@OFXͯͨ͠ ʢͦΕͦ͏ʣ
·ͣ'MBNFHSBQIΛ֬ೝ *0HFUDΊͬͪΌSC@TUS@OFXͯͨ͠ ʢͦΕͦ͏ʣ શવ͘ͳͬͯͳ͍ʂ
·ͣ'MBNFHSBQIΛ֬ೝ *0HFUDΊͬͪΌSC@TUS@OFXͯͨ͠ ʢͦΕͦ͏ʣ 3VCZͷ࣮ͱྑ͘ͳΕͨ
ຊ࣭ʹ͖߹͏ ڊେͳσʔλʢԯߦͰ(#ʣͷϩʔυ ͍ͦͦ UNQGT ϝϞϦ্ ʹஔ͍͍ͯΔ͕ɺͦΕͰ ʜʜ ϩʔυΛ͏·͍͜ͱϚϧνεϨουʹͨ͠ Β͘ͳΔ
,FSOFMHFUTͷ·· Ͳ͏ʹ͔ʜʜ
ग़యɿXXXXXXXXXXX ʜʜ͕ͨ͠ɺ͘ͳΔͲ͜Ζ͔͘ͳͬͨ ϑΝΠϧγεςϜͷΞΫηε͕γʔέϯ γϟϧͰͳ͘ͳ͔ͬͨΒʁʢ͜Εͨͩͷ ༧ʣ TVTFS TTZTUFN DQV UPUBM
ഒ͙Β͍͘ͳͬͨ HFUTΛϚϧνεϨουʹ
ͦͷଞͷ׆༻ࣄྫ
͜ΕNZTRMͷGMBNFHSBQI ͍42-͕͋Δͱ͖ɺ ΫΤϦૹ৴PS࣮ߦPS݁Ռͷड৴ ͲΕ͕͍͔Θ͔Δ SFBE@RVFSZ@SFTVMU ݁Ռͷड৴ QQPMM ࣮ߦͪ NZTRM@TFOE@RVFSZ
ΫΤϦͷૹ৴
1Gͷ͘͠Έ
1GͷΈ w Ұఆपظ͝ͱʹʮαϯϓϧʯΛऩू͍ͯ͠Δ w αϯϓϧͦͷॠؒʹ࣮ߦ͞Ε͍ͯͨ ϝιουɾؔͷใ w -JOVYͰΧʔωϧ͕QUISFBE୯Ґͷ$16 UJNFΛܭଌ͍ͯ͠ΔͷͰɺͦͷใΛར༻
w NBD04ͰͨͩͷλΠϚʔ 5BSHFUQSPHSBN ͷ࣮ߦ 1GʹΑΔ αϯϓϧऩू ҰఆपظͰ TJHOBMͰݺͿ ࣮ߦใͷ औಘ
1GͷΈ w αϯϓϧͷऩूํ๏ w ͭԼͷϨΠϠʔͷࢧԉ͕ඞཁ w 3VCZͷใ$3VCZͷSC@QSP fi MF@UISFBE@GSBNFT
Ͱऔಘ w $ίʔυͷใ$16ͷϓϩάϥϜΧϯλΛಡΈग़͢ EFCVHTZNCPM %8"3'͔ΒରԠ͢Δ໊ؔΛܭࢉ w MJCCBDLUSBDF͕ͬͯ͘Ε͍ͯΔ
1GͷΈ w ͦͷଞͷ3VCZಛ༗ͷػೳʹରԠ w (BSCBHFDPMMFDUJPOͷ౷ܭใ w (7-ͷ౷ܭใ w 3VCZϝιουͱ$ؔͷରԠ͚ͮ
w ͜ͷลSVCZSVCZ͔ΒTUSVDUΛίϐϖ͢ΔͳͲͷؾ߹͍
1GͷΈ w ͦͷଞͷ3VCZಛ༗ͷػೳʹରԠ w (BSCBHFDPMMFDUJPOͷ౷ܭใ w (7-ͷ౷ܭใ w 3VCZϝιουͱ$ؔͷରԠ͚ͮ
w ͜ͷลSVCZSVCZ͔ΒTUSVDUΛίϐϖ͢ΔͳͲͷؾ߹͍
1GͷΈ w ϓϩϑΝΠϥʹΦʔόʔϔου͕͋Δ w ϓϩϑΝΠϧ͢Δ͜ͱͰ͘ͳͬͯ͠·͏ w ͜ΕΛ࠷খݶʹ͢ΔΑ͏ؤுͬͨΓ ৄ͘͠
None
%BZ དྷ͍ͯͩ͘͞ʂʂʂ
1Gͷ͝հ HJUIVCDPNPTZPZVQG
એᶃʮ3VCZ,BJHJࣄલษڧձʢ4NBSU)3ओ࠵ʣʯͰ͠·͢ ໌ ɺʮ3VCZ,BJHJࣄલษڧձʯͰ ʰࠓͷ3VCZ,BJHJ1SP fi MFS:FBS🤘ʱͷΛ͠·͢
એᶄʮʲॳ৺ऀܴʳొஃऀͱ߈ུ͢Δ3VCZ,BJHJʲϓϩܴʳʯΓ·͢ ͍͍Πϕϯτʹ͠·͢ IUUQTTNBSUCBOLDPOOQBTTDPNFWFOU