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.5k
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.2k
GitHub Actions for R
jimhester
10
5.1k
vroom
jimhester
1
5.4k
it depends
jimhester
5
3.6k
Extending R Syntax: in package space
jimhester
1
780
Glue strings to data with glue
jimhester
0
200
You can make a package in 20 minutes
jimhester
1
76
Other Decks in Programming
See All in Programming
事業戦略を理解してソフトウェアを設計する
masuda220
PRO
15
4.1k
TypeScriptのmoduleオプションを改めて整理する
bicstone
4
440
Zennの運営完全に理解した #完全に理解したTalk
wadayusuke
1
150
Javaのルールをねじ曲げろ!禁断の操作とその代償から学ぶメタプログラミング入門 / A Guide to Metaprogramming: Lessons from Forbidden Techniques and Their Price
nrslib
2
1.4k
バランスを見極めよう!実装の意味を明示するための型定義 TSKaigi 2025 Day2 (5/24)
whatasoda
2
790
RubyKaigiで得られる10の価値 〜Ruby話を聞くことだけが RubyKaigiじゃない〜
tomohiko9090
0
110
Agent Rules as Domain Parser
yodakeisuke
1
380
人には人それぞれのサービス層がある
shimabox
3
570
Devinで実践する!AIエージェントと協働する開発組織の作り方
masahiro_nishimi
6
2.6k
TypeScript LSP の今までとこれから
quramy
0
190
External SecretsのさくらProvider初期実装を担当しています
logica0419
0
250
Use Perl as Better Shell Script
karupanerura
0
660
Featured
See All Featured
Fontdeck: Realign not Redesign
paulrobertlloyd
84
5.5k
Helping Users Find Their Own Way: Creating Modern Search Experiences
danielanewman
29
2.6k
Creating an realtime collaboration tool: Agile Flush - .NET Oxford
marcduiker
30
2.1k
Measuring & Analyzing Core Web Vitals
bluesmoon
7
470
Understanding Cognitive Biases in Performance Measurement
bluesmoon
29
1.7k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
6
660
Refactoring Trust on Your Teams (GOTO; Chicago 2020)
rmw
34
3k
Visualization
eitanlees
146
16k
A Modern Web Designer's Workflow
chriscoyier
693
190k
Intergalactic Javascript Robots from Outer Space
tanoku
271
27k
The Power of CSS Pseudo Elements
geoffreycrofte
76
5.8k
VelocityConf: Rendering Performance Case Studies
addyosmani
329
24k
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