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.3k
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
AI時代の仕事技芸論 — ソフトウェア開発で「遊ぶように働く」職人的熟達のすすめ
kuranuki
1
610
AI駆動開発勉強会 広島支部 第一回勉強会 AI駆動開発概要とワークショップ
hayatoshimiu
0
430
AIエージェントと協働するCLI開発 — BunとOpenClawで学んだこと
yoshikouki
1
230
AIとRubyの静的型付け
ukin0k0
0
530
ユニットテストの先へ:テスト技法で要求・仕様を整理するJava開発実践 / Beyond_Unit_Testing_Practical_Java_Development_Techniques_for_Organizing_Requirements_and_Specifications
shimashima35
0
340
作って学ぶ、 JSX (TSX) ランタイムの基本
syumai
7
1.5k
「AIで開発し、AIを届ける」をEvalでつなぐ 〜AIネイティブに始めるプロダクト開発の実践〜 / Connecting "Develop with AI, deliver AI" with Eval
rkaga
4
1.9k
AIとASP.NET Coreで雑Webアプリを作った話
mayuki
0
240
AI駆動開発で崩れていくコードベースを立て直す
kyoko_nr_nr
1
430
inferと仲良くなる10分間
ryokatsuse
1
360
Inside Stream API
skrb
1
620
These Five Tricks Can Make Your Apps Greener, Cheaper, & Nicer
hollycummins
0
270
Featured
See All Featured
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
How to optimise 3,500 product descriptions for ecommerce in one day using ChatGPT
katarinadahlin
PRO
1
3.6k
SEO in 2025: How to Prepare for the Future of Search
ipullrank
3
3.5k
Avoiding the “Bad Training, Faster” Trap in the Age of AI
tmiket
0
170
Documentation Writing (for coders)
carmenintech
77
5.4k
ラッコキーワード サービス紹介資料
rakko
1
3.5M
B2B Lead Gen: Tactics, Traps & Triumph
marketingsoph
0
130
svc-hook: hooking system calls on ARM64 by binary rewriting
retrage
2
280
How to build an LLM SEO readiness audit: a practical framework
nmsamuel
1
770
Improving Core Web Vitals using Speculation Rules API
sergeychernyshev
21
1.5k
Future Trends and Review - Lecture 12 - Web Technologies (1019888BNR)
signer
PRO
0
3.6k
Gemini Prompt Engineering: Practical Techniques for Tangible AI Outcomes
mfonobong
2
420
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]