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
bench
Search
Jim Hester
September 19, 2018
Programming
1
1.4k
bench
The bench package, a new take in benchmarking for R
Jim Hester
September 19, 2018
Tweet
Share
More Decks by Jim Hester
See All by Jim Hester
cpp11 - welding R and C++
jimhester
0
2.1k
GitHub Actions for R
jimhester
10
5.1k
vroom
jimhester
1
5.3k
it depends
jimhester
5
3.6k
Extending R Syntax: in package space
jimhester
1
740
Glue strings to data with glue
jimhester
0
180
You can make a package in 20 minutes
jimhester
1
66
Other Decks in Programming
See All in Programming
高セキュリティ・高耐障害性・サブシステム化。そして2億円
tasukulab280
2
550
Gunma.web #55
tinykitten
0
120
신입 안드로이드 개발자의 AI 스타트업 생존기 (+ Native C++ Code를 Android에서 사용해보기)
dygames
0
460
いまさら聞けない生成AI入門: 「生成AIを高速キャッチアップ」
soh9834
4
1.1k
フロントエンドテストの育て方
quramy
3
130
The Evolution of Enterprise Java with Jakarta EE 11 and Beyond
ivargrimstad
0
310
2025/3/18 サービスの成長で生じる幅広いパフォーマンスの問題を、 AIで手軽に解決する
shirahama_x
0
130
SLI/SLOの設定を進めるその前に アラート品質の改善に取り組んだ話
tanden
2
420
気がついたら子供が社会人になって 自分と同じモバイルアプリエンジニアになった件 / Parent-Child Engineers
koishi
0
260
Devin入門 〜月500ドルから始まるAIチームメイトとの開発生活〜 / Introduction Devin 〜Development With AI Teammates〜
rkaga
6
2.3k
CIBMTR振り返り+敗北から学ぶコンペの取り組み方反省
takanao
1
490
プログラミング教育のコスパの話
superkinoko
0
100
Featured
See All Featured
The Web Performance Landscape in 2024 [PerfNow 2024]
tammyeverts
4
480
Gamification - CAS2011
davidbonilla
80
5.2k
Optimising Largest Contentful Paint
csswizardry
34
3.1k
Code Reviewing Like a Champion
maltzj
521
39k
Practical Orchestrator
shlominoach
186
10k
4 Signs Your Business is Dying
shpigford
183
22k
GraphQLとの向き合い方2022年版
quramy
45
14k
For a Future-Friendly Web
brad_frost
176
9.6k
A better future with KSS
kneath
238
17k
Stop Working from a Prison Cell
hatefulcrawdad
268
20k
The Invisible Side of Design
smashingmag
299
50k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
331
21k
Transcript
CC by RStudio bench ! September 19th 2018 " bench.r-lib.org
Jim Hester CC-BY-4.0 A new take on benchmarking
Why benchmark?
"premature optimization is the root of all evil." - Donald
Knuth
"A good programmer… will be wise to look carefully at
the critical code; but only a!er that code has been identified." - Donald Knuth
"All (tools) should be designed to provide (us) with feedback
indicating what parts of (our) programs are costing the most" - Donald Knuth
bench::mark()
CC by RStudio bench::mark() 1. High precision timers (ns) 2.
Memory allocations 3. Number and type of R garbage collections 4. Result equality 5. Adaptive stopping 6. Statistics filter GC effects
CC by RStudio bench::mark() 1. Human readable times 2. Human
readable memory sizes 3. Full results / timings / GCs in list- cols
bench::press()
CC by RStudio bench::press()
bench::plot()
ggplot2::autoplot(results) CC by RStudio
CC by RStudio
bench.r-lib.org install.packages("bench") jimhester_ jimhester jim.hester@rstudio.com