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
640
令和最新版 Ruby プロファイラ "Pf2" のご紹介
osyoyu
April 24, 2024
Tweet
Share
More Decks by osyoyu
See All by osyoyu
もうちょっといいRubyプロファイラを作りたい (2025)
osyoyu
1
520
Profile and benchmark every change - RubyKaigi 2025
osyoyu
0
60
Regional.rb and the Tokyo Metropolis
osyoyu
0
220
都市伝説バスターズ「WebアプリのボトルネックはDBだから言語の性能は関係ない」 - Kaigi on Rails 2024
osyoyu
29
18k
プロファイラ開発者と見る「推測するな、計測せよ」 - YAPC::Hakodate 2024
osyoyu
7
870
ZigでC拡張を作る 2024 Edition
osyoyu
1
110
Rubyのパフォーマンスプロファイリングの改善 / Enhancing performance profiling for Ruby
osyoyu
2
1k
RubyKaigi Decks
osyoyu
0
190
The depths of profiling Ruby - RubyKaigi 2024
osyoyu
3
6.9k
Other Decks in Technology
See All in Technology
BirdCLEF+2025 Noir 5位解法紹介
myso
0
190
AI Agentと MCP Serverで実現する iOSアプリの 自動テスト作成の効率化
spiderplus_cb
0
480
GopherCon Tour 概略
logica0419
2
180
それでも私はContextに値を詰めたい | Go Conference 2025 / go conference 2025 fill context
budougumi0617
4
1.2k
関係性が駆動するアジャイル──GPTに人格を与えたら、対話を通してふりかえりを習慣化できた話
mhlyc
0
130
AI ReadyなData PlatformとしてのAutonomous Databaseアップデート
oracle4engineer
PRO
0
170
生成AIを活用したZennの取り組み事例
ryosukeigarashi
0
200
ユニットテストに対する考え方の変遷 / Everyone should watch his live coding
mdstoy
0
120
Shirankedo NOCで見えてきたeduroam/OpenRoaming運用ノウハウと課題 - BAKUCHIKU BANBAN #2
marokiki
0
110
Function calling機能をPLaMo2に実装するには / PFN LLMセミナー
pfn
PRO
0
910
【新卒研修資料】LLM・生成AI研修 / Large Language Model・Generative AI
brainpadpr
23
17k
[2025-09-30] Databricks Genie を利用した分析基盤とデータモデリングの IVRy の現在地
wxyzzz
0
470
Featured
See All Featured
Scaling GitHub
holman
463
140k
Why Our Code Smells
bkeepers
PRO
339
57k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
33
2.5k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Speed Design
sergeychernyshev
32
1.1k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
46
7.6k
Unsuck your backbone
ammeep
671
58k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
140
34k
Into the Great Unknown - MozCon
thekraken
40
2.1k
Music & Morning Musume
bryan
46
6.8k
The Invisible Side of Design
smashingmag
301
51k
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