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
600
令和最新版 Ruby プロファイラ "Pf2" のご紹介
osyoyu
April 24, 2024
Tweet
Share
More Decks by osyoyu
See All by osyoyu
Profile and benchmark every change - RubyKaigi 2025
osyoyu
0
24
Regional.rb and the Tokyo Metropolis
osyoyu
0
190
都市伝説バスターズ「WebアプリのボトルネックはDBだから言語の性能は関係ない」 - Kaigi on Rails 2024
osyoyu
28
17k
プロファイラ開発者と見る「推測するな、計測せよ」 - YAPC::Hakodate 2024
osyoyu
7
820
ZigでC拡張を作る 2024 Edition
osyoyu
1
98
Rubyのパフォーマンスプロファイリングの改善 / Enhancing performance profiling for Ruby
osyoyu
2
930
RubyKaigi Decks
osyoyu
0
170
The depths of profiling Ruby - RubyKaigi 2024
osyoyu
3
6.6k
今年のRubyKaigiはProfiler Year🤘
osyoyu
0
1.4k
Other Decks in Technology
See All in Technology
OpenTelemetry Collector internals
ymotongpoo
5
550
DroidKnights 2025 - Jetpack XR 살펴보기: XR 개발은 어떻게 이루어지는가?
heesung6701
1
120
vLLM meetup Tokyo
jpishikawa
1
240
比起獨自升級 我更喜歡 DevOps 文化 <3
line_developers_tw
PRO
0
220
Copilot Agentを普段使いしてわかった、バックエンド開発で使えるTips
ykagano
1
1.2k
新卒3年目の後悔〜機械学習モデルジョブの運用を頑張った話〜
kameitomohiro
0
300
Nonaka Sensei
kawaguti
PRO
4
710
AI技術トレンド勉強会 #1MCPの基礎と実務での応用
nisei_k
1
210
TODAY 看世界(?) 是我們在看扣啦!
line_developers_tw
PRO
0
220
菸酒生在 LINE Taiwan 的後端雙刀流
line_developers_tw
PRO
0
210
AIにどこまで任せる?実務で使える(かもしれない)AIエージェント設計の考え方
har1101
3
1.1k
評価の納得感を2段階高める「構造化フィードバック」
aloerina
1
200
Featured
See All Featured
Rebuilding a faster, lazier Slack
samanthasiow
81
9k
Making the Leap to Tech Lead
cromwellryan
134
9.3k
Code Review Best Practice
trishagee
68
18k
Typedesign – Prime Four
hannesfritz
42
2.7k
実際に使うSQLの書き方 徹底解説 / pgcon21j-tutorial
soudai
PRO
181
53k
Done Done
chrislema
184
16k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
47
2.8k
Testing 201, or: Great Expectations
jmmastey
42
7.5k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.8k
The World Runs on Bad Software
bkeepers
PRO
68
11k
The MySQL Ecosystem @ GitHub 2015
samlambert
251
13k
The Cult of Friendly URLs
andyhume
79
6.4k
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