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
690
令和最新版 Ruby プロファイラ "Pf2" のご紹介
osyoyu
April 24, 2024
Tweet
Share
More Decks by osyoyu
See All by osyoyu
もうちょっといいRubyプロファイラを作りたい (2025)
osyoyu
1
670
Profile and benchmark every change - RubyKaigi 2025
osyoyu
0
89
Regional.rb and the Tokyo Metropolis
osyoyu
0
240
都市伝説バスターズ「WebアプリのボトルネックはDBだから言語の性能は関係ない」 - Kaigi on Rails 2024
osyoyu
29
18k
プロファイラ開発者と見る「推測するな、計測せよ」 - YAPC::Hakodate 2024
osyoyu
7
920
ZigでC拡張を作る 2024 Edition
osyoyu
1
120
Rubyのパフォーマンスプロファイリングの改善 / Enhancing performance profiling for Ruby
osyoyu
2
1.1k
RubyKaigi Decks
osyoyu
0
200
The depths of profiling Ruby - RubyKaigi 2024
osyoyu
3
7.4k
Other Decks in Technology
See All in Technology
1万人を変え日本を変える!!多層構造型ふりかえりの大規模組織変革 / 20260108 Kazuki Mori
shift_evolve
PRO
6
950
チームで安全にClaude Codeを利用するためのプラクティス / team-claude-code-practices
tomoki10
6
2.8k
小さく、早く、可能性を多産する。生成AIプロジェクト / prAIrie-dog
visional_engineering_and_design
0
350
Eight Engineering Unit 紹介資料
sansan33
PRO
0
6.2k
国井さんにPurview の話を聞く会
sophiakunii
1
330
技術選定、下から見るか?横から見るか?
masakiokuda
0
180
「駆動」って言葉、なんかカッコイイ_Mitz
comucal
PRO
0
140
I tried making a solo advent calendar!
zzzzico
0
140
ハッカソンから社内プロダクトへ AIエージェント ko☆shi 開発で学んだ4つの重要要素
leveragestech
0
580
旬のブリと旬の技術で楽しむ AI エージェント設計開発レシピ
chack411
1
130
プロンプトエンジニアリングを超えて:自由と統制のあいだでつくる Platform × Context Engineering
yuriemori
0
240
産業的変化も組織的変化も乗り越えられるチームへの成長 〜チームの変化から見出す明るい未来〜
kakehashi
PRO
1
370
Featured
See All Featured
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
9
1.1k
Measuring Dark Social's Impact On Conversion and Attribution
stephenakadiri
1
100
The Cost Of JavaScript in 2023
addyosmani
55
9.4k
Measuring & Analyzing Core Web Vitals
bluesmoon
9
720
世界の人気アプリ100個を分析して見えたペイウォール設計の心得
akihiro_kokubo
PRO
65
35k
ラッコキーワード サービス紹介資料
rakko
0
1.9M
The Straight Up "How To Draw Better" Workshop
denniskardys
239
140k
Conquering PDFs: document understanding beyond plain text
inesmontani
PRO
4
2.2k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
27k
The #1 spot is gone: here's how to win anyway
tamaranovitovic
1
880
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
41
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