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.1k
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
1.7k
GitHub Actions for R
jimhester
10
4.7k
vroom
jimhester
1
4.5k
it depends
jimhester
5
3.3k
Extending R Syntax: in package space
jimhester
1
510
Glue strings to data with glue
jimhester
0
130
You can make a package in 20 minutes
jimhester
1
53
Other Decks in Programming
See All in Programming
코틀린으로 멀티플랫폼 만들기
pangmoo
0
120
Designing for tomorrow's programming workflows
honnibal
PRO
2
110
OpenAPIを中心に考えるAPI開発入門 / Introduction to API Development with a Focus on OpenAPI
seike460
PRO
2
110
Milestoner
bkuhlmann
1
400
受託開発でGitLab CI を活用していく
xiombatsg
1
270
品質とスピードを両立: TypeScriptの柔軟な型システムをバックエンドで活用する
kosui
8
2.2k
Ruby Function Composition
bkuhlmann
1
330
脱・初心者!脱・マネコン!AWS CDKを使ってみませんか!?
har1101
0
300
チーム力を高めるスクラム実践法:カンバン公開と課題攻略について - ニフティのスクラムトーク Vol. 2 - NIFTY Tech Talk #18
niftycorp
PRO
1
110
FigmaとPHPで作る1ミリたりとも表示崩れしない最強の帳票印刷ソリューション
ttskch
39
18k
StreamlitとTerraformでデータカタログを作った話
gussan0223
0
290
[SF Ruby, March 2024] Rails on Wasm
palkan
0
370
Featured
See All Featured
The Illustrated Children's Guide to Kubernetes
chrisshort
29
46k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
186
16k
No one is an island. Learnings from fostering a developers community.
thoeni
14
2.1k
VelocityConf: Rendering Performance Case Studies
addyosmani
320
23k
The Language of Interfaces
destraynor
151
23k
Java REST API Framework Comparison - PWX 2021
mraible
PRO
18
6.9k
Facilitating Awesome Meetings
lara
41
5.6k
Thoughts on Productivity
jonyablonski
57
3.8k
Distributed Sagas: A Protocol for Coordinating Microservices
caitiem20
321
20k
GitHub's CSS Performance
jonrohan
1023
450k
Designing the Hi-DPI Web
ddemaree
276
33k
Product Roadmaps are Hard
iamctodd
43
9.7k
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]