Skip to content

Commit 9f241bd

Browse files
authored
Add Cython definitions for device_uvector (#720)
The new cuDF [join APIs](rapidsai/cudf#7454) will return gathermaps of type `device_uvector<size_type>>`, so we need Cython definitions for it in RMM. Authors: - Ashwin Srinath (@shwina) Approvers: - Keith Kraus (@kkraus14) URL: #720
1 parent 0d6d2ad commit 9f241bd

File tree

1 file changed

+26
-0
lines changed

1 file changed

+26
-0
lines changed

python/rmm/_lib/device_uvector.pxd

Lines changed: 26 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,26 @@
1+
# Copyright (c) 2021, NVIDIA CORPORATION.
2+
3+
from rmm._lib.device_buffer cimport device_buffer
4+
from rmm._lib.cuda_stream_view cimport cuda_stream_view
5+
from rmm._lib.memory_resource cimport device_memory_resource
6+
7+
8+
cdef extern from "rmm/device_buffer.hpp" namespace "rmm" nogil:
9+
cdef cppclass device_uvector[T]:
10+
device_uvector(size_t size, cuda_stream_view stream) except +
11+
T* element_ptr(size_t index)
12+
void set_element(size_t element_index, const T& v, cuda_stream_view s)
13+
void set_element_async(
14+
size_t element_index,
15+
const T& v,
16+
cuda_stream_view s
17+
) except +
18+
T front_element(cuda_stream_view s) except +
19+
T back_element(cuda_stream_view s) except +
20+
void resize(size_t new_size, cuda_stream_view stream) except +
21+
void shrink_to_fit(cuda_stream_view stream) except +
22+
device_buffer release()
23+
size_t capacity()
24+
T* data()
25+
size_t size()
26+
device_memory_resource* memory_resource()

0 commit comments

Comments
 (0)