LSLab
Public Types | Public Member Functions | List of all members
lslab::set< K, Allocator, Hash > Class Template Reference

#include <set.h>

Public Types

using this_t = set< K, Allocator, Hash >
 

Public Member Functions

LSLAB_HOST set (unsigned n_log_2)
 
LSLAB_HOST set (unsigned n_log_2, Allocator &&a)
 
LSLAB_HOST_DEVICE set (warp_mutex *lt, detail::set_node< K > *s, unsigned n_log_2)
 
LSLAB_DEVICE set (warp_mutex *lt, detail::set_node< K > *s, unsigned n_log_2, Allocator &&a)
 
LSLAB_DEVICE bool contains (const K &key, bool thread_mask=true)
 
LSLAB_DEVICE bool insert (const K &key, bool thread_mask=true)
 
LSLAB_DEVICE bool remove (const K &key, bool thread_mask=true)
 
template<int block_size = 256>
LSLAB_HOST void contains (const K *keys, bool *output, size_t size, cudaStream_t stream=0x0)
 
template<int block_size = 256>
LSLAB_HOST void contains (const thrust::device_vector< K > &keys, thrust::device_vector< bool > &output, cudaStream_t stream=0x0)
 
template<int block_size = 256>
LSLAB_HOST void insert (const K *keys, bool *output, size_t size, cudaStream_t stream=0x0)
 
template<int block_size = 256>
LSLAB_HOST void insert (const thrust::device_vector< K > &keys, thrust::device_vector< bool > &output, cudaStream_t stream=0x0)
 
template<int block_size = 256>
LSLAB_HOST void remove (const K *keys, bool *output, size_t size, cudaStream_t stream=0x0)
 
template<int block_size = 256>
LSLAB_HOST void remove (const thrust::device_vector< K > &keys, thrust::device_vector< bool > &output, cudaStream_t stream=0x0)
 
LSLAB_HOST_DEVICE unsigned buckets () const
 

Detailed Description

template<typename K, typename Allocator = device_allocator<detail::set_node<K>>, typename Hash = hash<K>>
class lslab::set< K, Allocator, Hash >

LSlab set for GPU


The documentation for this class was generated from the following file: