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.9k
1
Share
bench
The bench package, a new take in benchmarking for R
Jim Hester
September 19, 2018
More Decks by Jim Hester
See All by Jim Hester
cpp11 - welding R and C++
jimhester
0
2.5k
GitHub Actions for R
jimhester
10
5.4k
vroom
jimhester
1
6.2k
it depends
jimhester
5
3.8k
Extending R Syntax: in package space
jimhester
1
1k
Glue strings to data with glue
jimhester
0
240
You can make a package in 20 minutes
jimhester
1
110
Other Decks in Programming
See All in Programming
AWSはOSSをどのように 考えているのか?
akihisaikeda
0
120
Liberating Ruby's Parser from Lexer Hacks
ydah
2
2.7k
【ディップ|26年新卒研修資料】OpenAPI/Swagger REST API研修
dip_tech
PRO
0
170
AI時代のエンジニアリングの原則 / Engineering Principles in the AI Era
haru860
0
1.2k
From Formal Specification to Property Based Test
ohbarye
0
2.6k
2026年のソフトウェア開発を考える(2026/05版) / Software Engineering Scrum Fest Niigata 2026 Edition
twada
PRO
23
13k
My daily life on Ruby
a_matsuda
3
390
HTML-Aware ERB: The Path to Reactive Rendering @ RubyKaigi 2026, Hakodate, Japan
marcoroth
0
710
When benchmarks go bad - what I learned from measuring performance wrong
hollycummins
0
390
開発とはなにか、Essenceカーネルで見えるもの
ukin0k0
0
170
なぜあなたのコードには「コシ」がないのか?〜AI時代に問う、最後まで美味しい設計と戦略〜 #phpconkagawa / phpconkagawa2026
shogogg
0
210
20260514_its_the_context_window_stupid.pdf
heita
0
1k
Featured
See All Featured
Self-Hosted WebAssembly Runtime for Runtime-Neutral Checkpoint/Restore in Edge–Cloud Continuum
chikuwait
0
530
Producing Creativity
orderedlist
PRO
348
40k
A Tale of Four Properties
chriscoyier
163
24k
Art, The Web, and Tiny UX
lynnandtonic
304
21k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
122
21k
Lightning talk: Run Django tests with GitHub Actions
sabderemane
0
180
16th Malabo Montpellier Forum Presentation
akademiya2063
PRO
0
120
RailsConf 2023
tenderlove
30
1.4k
The Success of Rails: Ensuring Growth for the Next 100 Years
eileencodes
47
8.1k
brightonSEO & MeasureFest 2025 - Christian Goodrich - Winning strategies for Black Friday CRO & PPC
cargoodrich
3
690
The Mindset for Success: Future Career Progression
greggifford
PRO
0
330
Let's Do A Bunch of Simple Stuff to Make Websites Faster
chriscoyier
508
140k
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
[email protected]