Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
bench
Search
Jim Hester
September 19, 2018
Programming
2k
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
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.6k
GitHub Actions for R
jimhester
10
5.4k
vroom
jimhester
1
6.4k
it depends
jimhester
5
3.8k
Extending R Syntax: in package space
jimhester
1
1.1k
Glue strings to data with glue
jimhester
0
250
You can make a package in 20 minutes
jimhester
1
110
Other Decks in Programming
See All in Programming
【DroidKaigi 2026】「アクセシビリティを利用するとき、 アクセシビリティもまたこちらを利用している」 〜マルウェアによる攻撃と防衛について〜
halunoyo
0
450
iOSDC2026登壇資料.pdf
riofujimon
0
120
AIを上手に使っていこうとしたら越境せざるを得なくなった話 〜実践1年で見えた境界を越えなければならない理由と進め方〜 / Crossing borders with AI
tomoyakitaura
4
1.1k
Intent as Code
shoppingjaws
6
970
Swift愛好会100回記念 第1回を振り返る
jollyjoester
0
120
GraphRAGのKnowledge Graphを 直接!見る/View-GraphRAG's-KnowledgeGraph-directly!
tyumugi1113
1
290
AIは賢い。でも実行環境は? CLIおじさんがAI時代に伝えたいこと ~ CLIおじさんがAI時代に伝えたいこと ~
curekoshimizu
1
240
Swift愛好会と私(ウホーイ) / Swift Fan Club and Uhooi
uhooi
0
150
巨大モノリシックアプリ モダン化大作戦
ktcryomm
0
950
From 6 People Classroom Meetup to 100 People Regional Conference / FOSS4G Hiroshima 2026
furukawayasuto
0
140
AHC070解法紹介
eijirou
0
110
Building an Out-of-Order CPU
latte72
1
760
Featured
See All Featured
How Fast Is Fast Enough? [PerfNow 2025]
tammyeverts
3
880
Building a Scalable Design System with Sketch
lauravandoore
464
34k
[RailsConf 2023] Rails as a piece of cake
palkan
59
7k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.8k
KATA
mclloyd
PRO
35
15k
Joys of Absence: A Defence of Solitary Play
codingconduct
1
510
The Illustrated Guide to Node.js - THAT Conference 2024
reverentgeek
1
480
Breaking role norms: Why Content Design is so much more than writing copy - Taylor Woolridge
uxyall
1
400
VelocityConf: Rendering Performance Case Studies
addyosmani
331
25k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
10
1.3k
Collaborative Software Design: How to facilitate domain modelling decisions
baasie
1
320
Imperfection Machines: The Place of Print at Facebook
scottboms
270
14k
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]