Conversation
|
Can one of the admins verify this patch? Admins can comment |
|
Pull requests from external contributors require approval from a |
|
ok to test |
|
/ok to test |
7921760 to
ef30e24
Compare
This PR adds `dynamic_bitset` code that will be used in Trie data structure. Trie will be integrated in a separate PR #350. Since `dynamic_bitset` is not intended to be part of public-facing API, all files (.cuh and .inl) are located in include/cuco/detail/trie/dynamic_bitset Tests are added in tests/dynamic_bitset --------- Co-authored-by: Yunsong Wang <yunsongw@nvidia.com> Co-authored-by: pre-commit-ci[bot] <66853113+pre-commit-ci[bot]@users.noreply.github.com>
|
/ok to test |
This improves insertion perfomance massively
A key is a list of labels. Iterators use LabelIt, rather than KeyIt.
sleeepyjack
left a comment
There was a problem hiding this comment.
Reviewed just the benchmarks
benchmarks/trie/lookup_bench.cu
Outdated
|
|
||
| distribution::unique lengths_dist; | ||
| distribution::gaussian labels_dist{0.5}; | ||
| generate_labels(labels, offsets, num_keys, max_key_length, lengths_dist, labels_dist); |
There was a problem hiding this comment.
This should be placed into some namespace, e.g., ´cuco::test::`
There was a problem hiding this comment.
Added namespace coco::test::trie 025c59a
benchmarks/trie/lookup_bench.cu
Outdated
| #include <defaults.hpp> | ||
| #include <utils.hpp> | ||
|
|
||
| #include "../../tests/trie/trie_utils.hpp" |
There was a problem hiding this comment.
You can use the system path here, i.e., <cuco/tests/…>.
There was a problem hiding this comment.
<cuco/tests/..> does not compile. Using <../tests/> in recent commit.
Should we change top-level CMakeLists or benchmarks/CMakeLists to access <cuco/tests/..> from benchmarks?
benchmarks/trie/insert_bench.cu
Outdated
| auto const num_keys = state.get_int64_or_default("NumKeys", 100 * 1000); | ||
| auto const max_key_length = state.get_int64_or_default("MaxKeyLength", 10); | ||
|
|
||
| using LabelType = int; |
There was a problem hiding this comment.
Would it make sense to make this a configurable parameter?
There was a problem hiding this comment.
7f1d083 makes LabelType configurable. Testing char, int for now.
Trie and associated bit-vector code with tests