-
Notifications
You must be signed in to change notification settings - Fork 207
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
perf: v2 fsl decode perf fix and some benchmarking utilities #2214
Conversation
westonpace
commented
Apr 17, 2024
- Add the ability to encode / decode in memory
- Add some initial decoder benchmarks
- Fix a perf bug (extra copy) in the fixed size list decoder
- Add some initial file reader benchmarks
- Add initial tracing to the decode path
- Make batch readahead configurable
Codecov ReportAttention: Patch coverage is
Additional details and impacted files@@ Coverage Diff @@
## main #2214 +/- ##
==========================================
- Coverage 81.15% 81.08% -0.08%
==========================================
Files 185 186 +1
Lines 53508 53533 +25
Branches 53508 53533 +25
==========================================
- Hits 43425 43406 -19
- Misses 7609 7656 +47
+ Partials 2474 2471 -3
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
7343049
to
34f2550
Compare
.col(None, lance_datagen::array::rand_type(&DataType::Int32)) | ||
.into_batch_rows(lance_datagen::RowCount::from(1024 * 1024)) | ||
.unwrap(); | ||
let rt = tokio::runtime::Runtime::new().unwrap(); |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
nit: instead of intializing a runtime inside of a loop, could we move to a static one? Here's an example of using std::sync::OnceLock
to accomplish this:
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Done. Though I just moved the runtime creation to the top of the benchmark method (outside the loop) instead of making it static.
* Add the ability to encode / decode in memory * Add some initial decoder benchmarks * Fix a perf bug (extra copy) in the fixed size list decoder * Add some initial file reader benchmarks * Add initial tracing to the decode path * Make batch readahead configurable
c45fb2d
to
95afe8f
Compare