@@ -787,8 +787,8 @@ static_multimap<Key, Value, Scope, Allocator, ProbeSequence>::static_multimap(
787787 empty_key_sentinel_{empty_key_sentinel.value },
788788 empty_value_sentinel_{empty_value_sentinel.value },
789789 allocator_{alloc},
790- delete_slots_{allocator_, capacity_},
791- slots_{allocator_.allocate (capacity_), delete_slots_}
790+ delete_slots_{allocator_, capacity_, cuda::stream_ref{stream} },
791+ slots_{allocator_.allocate (capacity_, cuda::stream_ref{stream} ), delete_slots_}
792792{
793793 auto constexpr block_size = 128 ;
794794 auto constexpr stride = 4 ;
@@ -909,7 +909,7 @@ std::size_t static_multimap<Key, Value, Scope, Allocator, ProbeSequence>::count(
909909 auto view = get_device_view ();
910910 auto const grid_size = (cg_size () * num_keys + stride * block_size - 1 ) / (stride * block_size);
911911
912- auto counter = detail::counter_storage<size_type, Scope, allocator_type>{allocator_};
912+ auto counter = detail::counter_storage<size_type, Scope, allocator_type>{allocator_, stream };
913913 counter.reset (stream);
914914
915915 detail::count<block_size, cg_size (), is_outer>
@@ -937,7 +937,7 @@ std::size_t static_multimap<Key, Value, Scope, Allocator, ProbeSequence>::count_
937937 auto view = get_device_view ();
938938 auto const grid_size = (cg_size () * num_keys + stride * block_size - 1 ) / (stride * block_size);
939939
940- auto counter = detail::counter_storage<size_type, Scope, allocator_type>{allocator_};
940+ auto counter = detail::counter_storage<size_type, Scope, allocator_type>{allocator_, stream };
941941 counter.reset (stream);
942942
943943 detail::count<block_size, cg_size (), is_outer>
@@ -965,7 +965,7 @@ std::size_t static_multimap<Key, Value, Scope, Allocator, ProbeSequence>::pair_c
965965 auto view = get_device_view ();
966966 auto const grid_size = (cg_size () * num_pairs + stride * block_size - 1 ) / (stride * block_size);
967967
968- auto counter = detail::counter_storage<size_type, Scope, allocator_type>{allocator_};
968+ auto counter = detail::counter_storage<size_type, Scope, allocator_type>{allocator_, stream };
969969 counter.reset (stream);
970970
971971 detail::pair_count<block_size, cg_size (), is_outer>
@@ -993,7 +993,7 @@ std::size_t static_multimap<Key, Value, Scope, Allocator, ProbeSequence>::pair_c
993993 auto view = get_device_view ();
994994 auto const grid_size = (cg_size () * num_pairs + stride * block_size - 1 ) / (stride * block_size);
995995
996- auto counter = detail::counter_storage<size_type, Scope, allocator_type>{allocator_};
996+ auto counter = detail::counter_storage<size_type, Scope, allocator_type>{allocator_, stream };
997997 counter.reset (stream);
998998
999999 detail::pair_count<block_size, cg_size (), is_outer>
@@ -1026,7 +1026,7 @@ OutputIt static_multimap<Key, Value, Scope, Allocator, ProbeSequence>::retrieve(
10261026
10271027 auto const grid_size = detail::grid_size (num_keys, cg_size ());
10281028
1029- auto counter = detail::counter_storage<size_type, Scope, allocator_type>{allocator_};
1029+ auto counter = detail::counter_storage<size_type, Scope, allocator_type>{allocator_, stream };
10301030 counter.reset (stream);
10311031
10321032 detail::retrieve<detail::default_block_size (), flushing_cg_size, cg_size (), buffer_size, is_outer>
@@ -1060,7 +1060,7 @@ OutputIt static_multimap<Key, Value, Scope, Allocator, ProbeSequence>::retrieve_
10601060
10611061 auto const grid_size = detail::grid_size (num_keys, cg_size ());
10621062
1063- auto counter = detail::counter_storage<size_type, Scope, allocator_type>{allocator_};
1063+ auto counter = detail::counter_storage<size_type, Scope, allocator_type>{allocator_, stream };
10641064 counter.reset (stream);
10651065
10661066 detail::retrieve<detail::default_block_size (), flushing_cg_size, cg_size (), buffer_size, is_outer>
@@ -1101,7 +1101,7 @@ static_multimap<Key, Value, Scope, Allocator, ProbeSequence>::pair_retrieve(
11011101 }();
11021102 auto const grid_size = (cg_size () * num_pairs + stride * block_size - 1 ) / (stride * block_size);
11031103
1104- auto counter = detail::counter_storage<size_type, Scope, allocator_type>{allocator_};
1104+ auto counter = detail::counter_storage<size_type, Scope, allocator_type>{allocator_, stream };
11051105 counter.reset (stream);
11061106
11071107 detail::pair_retrieve<block_size, flushing_cg_size, cg_size (), buffer_size, is_outer>
@@ -1148,7 +1148,7 @@ static_multimap<Key, Value, Scope, Allocator, ProbeSequence>::pair_retrieve_oute
11481148 }();
11491149 auto const grid_size = (cg_size () * num_pairs + stride * block_size - 1 ) / (stride * block_size);
11501150
1151- auto counter = detail::counter_storage<size_type, Scope, allocator_type>{allocator_};
1151+ auto counter = detail::counter_storage<size_type, Scope, allocator_type>{allocator_, stream };
11521152 counter.reset (stream);
11531153
11541154 detail::pair_retrieve<block_size, flushing_cg_size, cg_size (), buffer_size, is_outer>
0 commit comments