Feature: Use array.filter() instead of filter(array) compute#6146
Feature: Use array.filter() instead of filter(array) compute#6146connortsui20 merged 4 commits intodevelopfrom
array.filter() instead of filter(array) compute#6146Conversation
|
Note: it seems like only the bitpacking early filter benchmark suffers, everything else is an improvement |
CodSpeed Performance ReportMerging this PR will degrade performance by 24.32%Comparing
|
9b77c0e to
b33edc8
Compare
Benchmarks: TPC-H SF=1 on NVMESummary
Detailed Results Table
|
Benchmarks: FineWeb NVMeSummary
Detailed Results Table
|
Benchmarks: TPC-DS SF=1 on NVMESummary
Detailed Results Table
|
Benchmarks: TPC-H SF=1 on S3Summary
Detailed Results Table
|
Benchmarks: TPC-H SF=10 on NVMESummary
Detailed Results Table
|
Benchmarks: FineWeb S3Summary
Detailed Results Table
|
Benchmarks: Statistical and Population GeneticsSummary
Detailed Results Table
|
Benchmarks: TPC-H SF=10 on S3Summary
Detailed Results Table
|
47f581b to
b887749
Compare
b887749 to
ac91262
Compare
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
Since in the new world there is no difference between setting up early and late filtering (because of reduce and reduce parent), we really just want to benchmark this in a dedicated benchmark for testing the speed of `.execute(ctx)`. remove pco test since its not measuring anything anymore remove runend filter bench since its not measuring anything anymore Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
ac91262 to
48d1a81
Compare
Benchmarks: Random AccessSummary
|
581a7e9 to
703fcba
Compare
Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
703fcba to
4940e77
Compare
|
Whoops looks like this broke the compression throughput and clickbench benchmarks, unfortunately theres no warning |
…6147) This is based on top of #6146, that needs to merge first. Simply changes the syntax so that we use the new `FilterArray`, so this is purely a cosmetic change after #6146. Note that I only made the change when this gets called inside one of the old compute functions, and the code for all of the old filter compute are going to be moved around soon so this is fine. There are just a few places (around 8) where we call the old `filter` _outside_ of the old compute kernels. I've left those as is so it's easy to search for them later. We still have to figure out what to do with them. Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
This is a mostly cosmetic change to remove the old filter compute kernels from the `FilterArray` implementation, placing the code in `vortex-array/src/arrays/filter/execute` instead of dispersed everywhere. The non-cosmetic changes are trivial, just making some things cleaner to understand. This is based on top of #6147, which is also based on top of #6146 --------- Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
I also removed some benchmarks (3) that now no longer benchmark anything useful. We'll soon want a way to benchmark the execution of arbitrary arrays, and they should all share similar benchmarking logic. In a follow up PR (#6147) I will remove every occurrence of the old `filter` compute function! mwa ha ha --------- Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
…6147) This is based on top of #6146, that needs to merge first. Simply changes the syntax so that we use the new `FilterArray`, so this is purely a cosmetic change after #6146. Note that I only made the change when this gets called inside one of the old compute functions, and the code for all of the old filter compute are going to be moved around soon so this is fine. There are just a few places (around 8) where we call the old `filter` _outside_ of the old compute kernels. I've left those as is so it's easy to search for them later. We still have to figure out what to do with them. Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
This is a mostly cosmetic change to remove the old filter compute kernels from the `FilterArray` implementation, placing the code in `vortex-array/src/arrays/filter/execute` instead of dispersed everywhere. The non-cosmetic changes are trivial, just making some things cleaner to understand. This is based on top of #6147, which is also based on top of #6146 --------- Signed-off-by: Connor Tsui <connor.tsui20@gmail.com>
I also removed some benchmarks (3) that now no longer benchmark anything useful. We'll soon want a way to benchmark the execution of arbitrary arrays, and they should all share similar benchmarking logic.
In a follow up PR (#6147) I will remove every occurrence of the old
filtercompute function! mwa ha ha