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
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
Jim Hester
September 19, 2018
Programming
1.9k
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
LL言語やWebフレームワークのPostgreSQL対応 〜DBの機能がユーザーに届くまで〜
kentaroutakeda
0
110
Deep dive into the select statement (GopherCon UK)
jespino
0
170
夏だ!祭りだ!祭りとはドメインモデリングでは?
ryugen04
0
510
ALB ログから Trace を気合で繋げる技術
fohte
7
840
ソフトウェアエンジニアにとっての生成AI - 特性を知って使い倒す / generative ai for software enginner
kishida
7
2.3k
PHPプロジェクトの結合バランスを可視化する #php_night
kajitack
0
190
Claude CodeとAgentCore Gatewayを繋ぐ際の認証認可 / Authentication and authorization when connecting Claude Code with AgentCore Gateway
har1101
2
420
仕様駆動開発の消費期限
watany
20
9.2k
AI に Inclusive UI を書かせよう — Design Rules Skill で Compose UI を作り直す
theoriatec2024
1
380
自分的「カンファレンスの楽しみ方」
syumai
0
170
Go 1.27からのGODEBUG / Go 1.27 リリースパーティ #go127party
mazrean
0
280
S3 を使うアプリケーションをローカル完結で動かすことに全力を注いでみた / Running S3 Apps Offline
contour_gara
0
740
Featured
See All Featured
Design of three-dimensional binary manipulators for pick-and-place task avoiding obstacles (IECON2024)
konakalab
0
570
ラッコキーワード サービス紹介資料
rakko
1
4.7M
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
63
45k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
510
Being A Developer After 40
akosma
91
590k
Raft: Consensus for Rubyists
vanstee
141
7.7k
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
230
Exploring anti-patterns in Rails
aemeredith
3
490
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.6k
Build your cross-platform service in a week with App Engine
jlugia
234
19k
Accessibility Awareness
sabderemane
1
190
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
69
64k
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]