Skip to content

Commit ad880ef

Browse files
authored
Merge branch 'dev' into fea/support-for-span-like-arrow-filter-policy
2 parents 32185ee + 644e553 commit ad880ef

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+237
-128
lines changed

benchmarks/benchmark_utils.hpp

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2023, NVIDIA CORPORATION.
2+
* Copyright (c) 2023-2024, NVIDIA CORPORATION.
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -29,10 +29,10 @@ auto dist_from_state(nvbench::state const& state)
2929
if constexpr (std::is_same_v<Dist, cuco::utility::distribution::unique>) {
3030
return Dist{};
3131
} else if constexpr (std::is_same_v<Dist, cuco::utility::distribution::uniform>) {
32-
auto const multiplicity = state.get_int64_or_default("Multiplicity", defaults::MULTIPLICITY);
32+
auto const multiplicity = state.get_int64("Multiplicity");
3333
return Dist{multiplicity};
3434
} else if constexpr (std::is_same_v<Dist, cuco::utility::distribution::gaussian>) {
35-
auto const skew = state.get_float64_or_default("Skew", defaults::SKEW);
35+
auto const skew = state.get_float64("Skew");
3636
return Dist{skew};
3737
} else {
3838
CUCO_FAIL("Unexpected distribution type");

benchmarks/bloom_filter/add_bench.cu

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ void bloom_filter_add(nvbench::state& state,
4949

5050
auto const num_keys = state.get_int64("NumInputs");
5151
auto const filter_size_mb = state.get_int64("FilterSizeMB");
52-
auto const pattern_bits = state.get_int64_or_default("PatternBits", WordsPerBlock);
52+
auto const pattern_bits = WordsPerBlock;
5353

5454
try {
5555
auto const policy = policy_type{static_cast<uint32_t>(pattern_bits)};
@@ -171,4 +171,4 @@ NVBENCH_BENCH_TYPES(arrow_bloom_filter_add,
171171
.set_type_axes_names({"Key", "Distribution"})
172172
.set_max_noise(defaults::MAX_NOISE)
173173
.add_int64_axis("NumInputs", {defaults::BF_N})
174-
.add_int64_axis("FilterSizeMB", defaults::BF_SIZE_MB_RANGE_CACHE);
174+
.add_int64_axis("FilterSizeMB", defaults::BF_SIZE_MB_RANGE_CACHE);

benchmarks/bloom_filter/contains_bench.cu

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -51,7 +51,7 @@ void bloom_filter_contains(
5151

5252
auto const num_keys = state.get_int64("NumInputs");
5353
auto const filter_size_mb = state.get_int64("FilterSizeMB");
54-
auto const pattern_bits = state.get_int64_or_default("PatternBits", WordsPerBlock);
54+
auto const pattern_bits = WordsPerBlock;
5555

5656
try {
5757
auto const policy = policy_type{static_cast<uint32_t>(pattern_bits)};
@@ -181,4 +181,4 @@ NVBENCH_BENCH_TYPES(arrow_bloom_filter_contains,
181181
.set_type_axes_names({"Key", "Distribution"})
182182
.set_max_noise(defaults::MAX_NOISE)
183183
.add_int64_axis("NumInputs", {defaults::BF_N})
184-
.add_int64_axis("FilterSizeMB", defaults::BF_SIZE_MB_RANGE_CACHE);
184+
.add_int64_axis("FilterSizeMB", defaults::BF_SIZE_MB_RANGE_CACHE);

benchmarks/static_multiset/retrieve_bench.cu

Lines changed: 14 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -34,9 +34,9 @@ using namespace cuco::utility;
3434
template <typename Key, typename Dist>
3535
void static_multiset_retrieve(nvbench::state& state, nvbench::type_list<Key, Dist>)
3636
{
37-
auto const num_keys = state.get_int64_or_default("NumInputs", defaults::N);
38-
auto const occupancy = state.get_float64_or_default("Occupancy", defaults::OCCUPANCY);
39-
auto const matching_rate = state.get_float64_or_default("MatchingRate", defaults::MATCHING_RATE);
37+
auto const num_keys = state.get_int64("NumInputs");
38+
auto const occupancy = state.get_float64("Occupancy");
39+
auto const matching_rate = state.get_float64("MatchingRate");
4040

4141
std::size_t const size = num_keys / occupancy;
4242

@@ -68,20 +68,29 @@ NVBENCH_BENCH_TYPES(static_multiset_retrieve,
6868
.set_name("static_multiset_retrieve_uniform_occupancy")
6969
.set_type_axes_names({"Key", "Distribution"})
7070
.set_max_noise(defaults::MAX_NOISE)
71-
.add_float64_axis("Occupancy", defaults::OCCUPANCY_RANGE);
71+
.add_int64_axis("NumInputs", {defaults::N})
72+
.add_float64_axis("Occupancy", defaults::OCCUPANCY_RANGE)
73+
.add_float64_axis("MatchingRate", {defaults::MATCHING_RATE})
74+
.add_int64_axis("Multiplicity", {defaults::MULTIPLICITY});
7275

7376
NVBENCH_BENCH_TYPES(static_multiset_retrieve,
7477
NVBENCH_TYPE_AXES(defaults::KEY_TYPE_RANGE,
7578
nvbench::type_list<distribution::uniform>))
7679
.set_name("static_multiset_retrieve_uniform_matching_rate")
7780
.set_type_axes_names({"Key", "Distribution"})
7881
.set_max_noise(defaults::MAX_NOISE)
79-
.add_float64_axis("MatchingRate", defaults::MATCHING_RATE_RANGE);
82+
.add_int64_axis("NumInputs", {defaults::N})
83+
.add_float64_axis("Occupancy", {defaults::OCCUPANCY})
84+
.add_float64_axis("MatchingRate", defaults::MATCHING_RATE_RANGE)
85+
.add_int64_axis("Multiplicity", {defaults::MULTIPLICITY});
8086

8187
NVBENCH_BENCH_TYPES(static_multiset_retrieve,
8288
NVBENCH_TYPE_AXES(defaults::KEY_TYPE_RANGE,
8389
nvbench::type_list<distribution::uniform>))
8490
.set_name("static_multiset_retrieve_uniform_multiplicity")
8591
.set_type_axes_names({"Key", "Distribution"})
8692
.set_max_noise(defaults::MAX_NOISE)
93+
.add_int64_axis("NumInputs", {defaults::N})
94+
.add_float64_axis("Occupancy", {defaults::OCCUPANCY})
95+
.add_float64_axis("MatchingRate", {defaults::MATCHING_RATE})
8796
.add_int64_axis("Multiplicity", defaults::MULTIPLICITY_RANGE);

tests/CMakeLists.txt

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -75,9 +75,11 @@ ConfigureTest(STATIC_SET_TEST
7575
# - static_map tests ------------------------------------------------------------------------------
7676
ConfigureTest(STATIC_MAP_TEST
7777
static_map/capacity_test.cu
78+
static_map/contains_test.cu
7879
static_map/custom_type_test.cu
7980
static_map/duplicate_keys_test.cu
8081
static_map/erase_test.cu
82+
static_map/find_test.cu
8183
static_map/for_each_test.cu
8284
static_map/hash_test.cu
8385
static_map/heterogeneous_lookup_test.cu
@@ -87,7 +89,6 @@ ConfigureTest(STATIC_MAP_TEST
8789
static_map/key_sentinel_test.cu
8890
static_map/shared_memory_test.cu
8991
static_map/stream_test.cu
90-
static_map/unique_sequence_test.cu
9192
static_map/rehash_test.cu)
9293

9394
###################################################################################################

tests/bloom_filter/arrow_policy_test.cu

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -150,8 +150,12 @@ void test_filter_bitset(Filter& filter, size_t num_keys)
150150
})));
151151
}
152152

153-
TEMPLATE_TEST_CASE_SIG(
154-
"Arrow filter policy bitset validation", "", (class Key), (int32_t), (int64_t), (float))
153+
TEMPLATE_TEST_CASE_SIG("bloom_filter arrow filter policy bitset validation",
154+
"",
155+
(class Key),
156+
(int32_t),
157+
(int64_t),
158+
(float))
155159
{
156160
// Get test settings
157161
auto const [sub_filters, num_keys] = get_arrow_filter_test_settings<Key>();

tests/bloom_filter/unique_sequence_test.cu

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -85,7 +85,7 @@ void test_unique_sequence(Filter& filter, size_type num_keys)
8585
}
8686

8787
TEMPLATE_TEST_CASE_SIG(
88-
"Unique sequence with default policy",
88+
"bloom_filter default policy tests",
8989
"",
9090
((class Key, class Policy), Key, Policy),
9191
(int32_t, cuco::default_filter_policy<cuco::xxhash_64<int32_t>, uint32_t, 1>),
@@ -105,7 +105,7 @@ TEMPLATE_TEST_CASE_SIG(
105105
test_unique_sequence(filter, num_keys);
106106
}
107107

108-
TEMPLATE_TEST_CASE_SIG("Unique sequence with arrow policy",
108+
TEMPLATE_TEST_CASE_SIG("bloom_filter arrow policy tests",
109109
"",
110110
((class Key, class Policy), Key, Policy),
111111
(int32_t, cuco::arrow_filter_policy<int32_t>),

tests/dynamic_bitset/find_next_test.cu

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2023, NVIDIA CORPORATION.
2+
* Copyright (c) 2023-2024, NVIDIA CORPORATION.
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -37,7 +37,7 @@ __global__ void find_next_kernel(BitsetRef ref, size_type num_elements, OutputIt
3737

3838
extern bool modulo_bitgen(uint64_t i); // Defined in get_test.cu
3939

40-
TEST_CASE("Find next set test", "")
40+
TEST_CASE("dynamic_bitset find next set test", "")
4141
{
4242
cuco::experimental::detail::dynamic_bitset bv;
4343

tests/dynamic_bitset/get_test.cu

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2023, NVIDIA CORPORATION.
2+
* Copyright (c) 2023-2024, NVIDIA CORPORATION.
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -37,7 +37,7 @@ __global__ void test_kernel(BitsetRef ref, size_type num_elements, OutputIt outp
3737

3838
bool modulo_bitgen(uint64_t i) { return i % 7 == 0; }
3939

40-
TEST_CASE("Get test", "")
40+
TEST_CASE("dynamic_bitset get test", "")
4141
{
4242
cuco::experimental::detail::dynamic_bitset bv;
4343

tests/dynamic_bitset/rank_test.cu

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
/*
2-
* Copyright (c) 2023, NVIDIA CORPORATION.
2+
* Copyright (c) 2023-2024, NVIDIA CORPORATION.
33
*
44
* Licensed under the Apache License, Version 2.0 (the "License");
55
* you may not use this file except in compliance with the License.
@@ -26,7 +26,7 @@
2626

2727
extern bool modulo_bitgen(uint64_t i); // Defined in get_test.cu
2828

29-
TEST_CASE("Rank test", "")
29+
TEST_CASE("dynamic_bitset rank test", "")
3030
{
3131
cuco::experimental::detail::dynamic_bitset bv;
3232

0 commit comments

Comments
 (0)