-
Notifications
You must be signed in to change notification settings - Fork 113
Parametric Sectorized Bloom filter policy #808
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
Open
sleeepyjack
wants to merge
87
commits into
NVIDIA:dev
Choose a base branch
from
sleeepyjack:bloom-filter-release
base: dev
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Open
Changes from all commits
Commits
Show all changes
87 commits
Select commit
Hold shift + click to select a range
d67ae07
Add support for horizontal/verstical vectorization parameter
sleeepyjack cb7a78d
Restructure policies
sleeepyjack 21ff88c
Fix indexing bug
sleeepyjack 41e217a
Coalesced output write
sleeepyjack 2b8ecde
Add unit test for adaptive contains kernel
sleeepyjack c322825
Add parametric filter policy (dummy)
sleeepyjack 17f9c19
Merge remote-tracking branch 'upstream' into exp-filter-policy
sleeepyjack 97693a3
Multiplicative hashing implemented in policy. Some changes needed to …
kevkrist 4285b39
Finalized proposed policy interface.
kevkrist 0934cba
Fixed a mistake in thread_dispatch(). Removed some dead static variab…
kevkrist cf43c8f
Multiplicative hashing calling code infrastructure.
kevkrist 52d7f17
New example script for sanity checking. Still need to connect the hos…
kevkrist 91714b0
host and device APIs are connected for multiplicative hashing, but co…
kevkrist fa7d9a7
Debugging done. End-to-end filters working properly.
kevkrist 13918c2
Tests updated.
kevkrist 7008773
Good performance agains arrow FP when early exit is turned off. Will …
kevkrist 9252f69
Updated bloom filter nvbench script.
kevkrist 12b4847
Changing exp kernels from if to while for grid-striding.
kevkrist d3fcce2
Bug fix in filter size in PFP_EVALUATION_EXAMPLE
kevkrist a30d1b1
Bug fix in while loop in exp kernels.
kevkrist 18e9c34
Small PR review fixes.
kevkrist a018896
group-cooperative parametric filter policy code paths implemented.
kevkrist 8020b72
Benchmark scripts updated.
kevkrist b655183
Notebook with theoretical FPR calculators.
kevkrist e558f1c
Remove static checks on hash result type that are blocking NVBench.
kevkrist c83912c
Enum type lists for the add benchmark added.
kevkrist 46cf45f
Added salt generation script. Updated the total number of salts to 64.
kevkrist 892e4a9
Updated block index selection in PFP to match Arrow policy.
kevkrist e9f8ac9
Merge remote-tracking branch 'upstream' into exp-filter-policy
sleeepyjack 1a4b5e0
Enable magic modulo
sleeepyjack 8c0f49a
Enable warp-cooperative kernels
sleeepyjack 726735a
Update benchmarks
sleeepyjack 04c48ee
Add experimental Arrow filter policy
sleeepyjack a177107
Update benchmarks
sleeepyjack db020aa
Add RTX600 Blackwell benchmark results
sleeepyjack a815053
Add H200 benchmark results
sleeepyjack a793644
Add B200 benchmark results
sleeepyjack 70376cd
Notebook for generating filter size sweep plots.
kevkrist f6ef851
Plot generating script added and plots for the add/contains sweeps ge…
kevkrist 69425d5
Modified group-cooperative hashing.
kevkrist a38caba
Fixed some bugs in the plotting script. New data/plots for new group-…
kevkrist f638544
Added warpcore benchmarks. Updated frontier.
kevkrist b6301e2
Updated frontier plot
kevkrist 252a32b
Updated pfp implementation to switch to conditional atomic inserts wh…
kevkrist 8bc13b0
Cleaning up dead code.
kevkrist 087dfdd
Outsource thirdparty benchmarks
sleeepyjack 8368f9b
Merge branch 'dev' into consolidate
sleeepyjack b454236
Fix add benchmarks and more merge conflicts
sleeepyjack 3db5153
Fix lazy_discard_iterator
sleeepyjack ac204eb
Add CTA work stealing option
sleeepyjack 4cea931
Add arch guard for work stealing kernels
sleeepyjack 4de8306
Update benchmarks
sleeepyjack d0ad05c
Minor fixes
sleeepyjack 81cf164
Enable ninja build generator
sleeepyjack c676524
Merge remote-tracking branch 'upstream' into consolidate
sleeepyjack 65c727b
cache_sectorized implemented in parametric_filter_policy.
kevkrist 555113f
Started on bloom_filter_imp
kevkrist 25bf1cc
Add implemented for cache-sectorized.
kevkrist aa5b117
Fix bug in set_bits routine for cache-sectorized.
kevkrist 2cce8c2
contains implemented for cache-sectorized.
kevkrist 00d5bde
contains has bug when horizontal_layout > 1.
kevkrist 5643887
Cache-sectorized working.
kevkrist 4d39069
Turned off use_cub_kernels and work stealing for clearer evaluation.
kevkrist 355b646
Add CSBF benchmarks
sleeepyjack 94bce41
Merge remote-tracking branch 'upstream/dev' into consolidate
sleeepyjack 617cb3f
Merge remote-tracking branch 'upstream/dev' into bloom-filter-release
sleeepyjack b805999
Drop baggage
sleeepyjack 519970f
WIP but working
sleeepyjack 6d299e0
Tuning struct
sleeepyjack 076a5cf
Docs
sleeepyjack 96e2a5a
Address review comments
sleeepyjack a999f46
[pre-commit.ci] auto code formatting
pre-commit-ci[bot] c2dc7ab
Merge branch 'dev' into bloom-filter-release
sleeepyjack b4c4aa5
Update copyright year
sleeepyjack 2a8de62
Merge branch 'bloom-filter-release' of github.com:sleeepyjack/cuColle…
sleeepyjack 20be4e3
Address Doxygen
sleeepyjack 4ac613e
Fix CTK 12.0 build: gate CG invoke_one and cluster launch control
sleeepyjack 0a2509f
Merge remote-tracking branch 'upstream' into bloom-filter-release
sleeepyjack 739079f
Review fixes
sleeepyjack 46fbaf0
Merge remote-tracking branch 'upstream/dev' into bloom-filter-release
sleeepyjack 4dfb811
Remove CSBF
sleeepyjack 97635fe
Remove IO-less benchmarks
sleeepyjack dbe61ec
More tests
sleeepyjack 10f09d6
Remove range scalar device functions as they were ambiguous overloads…
sleeepyjack 8b1e995
Cleanups
sleeepyjack eae3049
Fix CUCO_HAS_CG_INVOKE_ONE usage
sleeepyjack c571c33
Merge branch 'dev' into bloom-filter-release
sleeepyjack File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Oops, something went wrong.
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
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.
@sleeepyjack Could you please share a performance comparison between the baseline and the current implementation? It would be helpful to have those numbers documented for future reference.
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.
I'm working on a small ablation study testing all those different tuning knobs. This will also help answer some of your other comments.