|
GPU-Accelerated Cuckoo Filter
|
Client implementation for the IPC Cuckoo Filter. More...
Public Types | |
| using | T = typename Config::KeyType |
Public Member Functions | |
| FilterIPCClient (const std::string &name) | |
| Constructs a new FilterIPCClient. | |
| ~FilterIPCClient () | |
| Destroys the FilterIPCClient. | |
| size_t | insertMany (const T *d_keys, size_t count) |
| Inserts multiple keys into the filter. | |
| void | containsMany (const T *d_keys, size_t count, bool *d_output) |
| Checks for existence of multiple keys. | |
| size_t | deleteMany (const T *d_keys, size_t count, bool *d_output=nullptr) |
| Deletes multiple keys from the filter. | |
| void | clear () |
| Clears the filter. | |
| void | requestShutdown () |
| Requests the server to shut down. | |
| size_t | insertMany (const thrust::device_vector< T > &d_keys) |
| Inserts keys from a Thrust device vector. | |
| void | containsMany (const thrust::device_vector< T > &d_keys, thrust::device_vector< bool > &d_output) |
| Checks for existence of keys in a Thrust device vector. | |
| void | containsMany (const thrust::device_vector< T > &d_keys, thrust::device_vector< uint8_t > &d_output) |
| Checks for existence of keys in a Thrust device vector (uint8_t output). | |
| size_t | deleteMany (const thrust::device_vector< T > &d_keys, thrust::device_vector< bool > &d_output) |
| Deletes keys in a Thrust device vector. | |
| size_t | deleteMany (const thrust::device_vector< T > &d_keys, thrust::device_vector< uint8_t > &d_output) |
| Deletes keys in a Thrust device vector (uint8_t output). | |
| size_t | deleteMany (const thrust::device_vector< T > &d_keys) |
| Deletes keys in a Thrust device vector without outputting results. | |
Client implementation for the IPC Cuckoo Filter.
This class connects to an existing shared memory segment created by a server and allows submitting filter operations. It handles the details of mapping memory handles for CUDA IPC.
Definition at line 459 of file CuckooFilterIPC.cuh.
| using cuckoogpu::FilterIPCClient< Config >::T = typename Config::KeyType |
Definition at line 467 of file CuckooFilterIPC.cuh.
|
inlineexplicit |
Constructs a new FilterIPCClient.
Connects to the shared memory segment.
| name | Name of the shared memory segment to connect to. |
Definition at line 476 of file CuckooFilterIPC.cuh.
|
inline |
Destroys the FilterIPCClient.
Unmaps the shared memory.
Definition at line 504 of file CuckooFilterIPC.cuh.
|
inline |
|
inline |
Checks for existence of multiple keys.
| d_keys | Pointer to device memory containing keys. |
| count | Number of keys to check. |
| d_output | Pointer to device memory to store results (true/false). |
Definition at line 531 of file CuckooFilterIPC.cuh.
|
inline |
Checks for existence of keys in a Thrust device vector.
| d_keys | Vector of keys to check. |
| d_output | Vector to store results (bool). Resized if necessary. |
Definition at line 593 of file CuckooFilterIPC.cuh.
|
inline |
Checks for existence of keys in a Thrust device vector (uint8_t output).
| d_keys | Vector of keys to check. |
| d_output | Vector to store results (uint8_t). Resized if necessary. |
Definition at line 610 of file CuckooFilterIPC.cuh.
|
inline |
Deletes multiple keys from the filter.
| d_keys | Pointer to device memory containing keys. |
| count | Number of keys to delete. |
| d_output | Optional pointer to device memory to store results (true if deleted). |
Definition at line 543 of file CuckooFilterIPC.cuh.
|
inline |
Deletes keys in a Thrust device vector without outputting results.
| d_keys | Vector of keys to delete. |
Definition at line 662 of file CuckooFilterIPC.cuh.
|
inline |
Deletes keys in a Thrust device vector.
| d_keys | Vector of keys to delete. |
| d_output | Vector to store results (bool). Resized if necessary. |
Definition at line 628 of file CuckooFilterIPC.cuh.
|
inline |
Deletes keys in a Thrust device vector (uint8_t output).
| d_keys | Vector of keys to delete. |
| d_output | Vector to store results (uint8_t). Resized if necessary. |
Definition at line 646 of file CuckooFilterIPC.cuh.
|
inline |
Inserts multiple keys into the filter.
| d_keys | Pointer to device memory containing keys. |
| count | Number of keys to insert. |
Definition at line 520 of file CuckooFilterIPC.cuh.
|
inline |
Inserts keys from a Thrust device vector.
| d_keys | Vector of keys to insert. |
Definition at line 583 of file CuckooFilterIPC.cuh.
|
inline |
Requests the server to shut down.
Definition at line 557 of file CuckooFilterIPC.cuh.