thrust::device_malloc_allocator#

template<typename T>
class device_malloc_allocator#

device_malloc_allocator is a device memory allocator that employs the device_malloc function for allocation.

device_malloc_allocator is deprecated in favor of thrust::mr memory resource-based allocators.

See also

device_malloc

See also

device_ptr

See also

device_allocator

Public Types

using value_type = T#

Type of element allocated, T.

using pointer = device_ptr<T>#

Pointer to allocation, device_ptr<T>.

using const_pointer = device_ptr<const T>#

const pointer to allocation, device_ptr<const T>.

using reference = device_reference<T>#

Reference to allocated element, device_reference<T>.

using const_reference = device_reference<const T>#

const reference to allocated element, device_reference<const T>.

using size_type = std::size_t#

Type of allocation size, std::size_t.

using difference_type = typename pointer::difference_type#

Type of allocation difference, pointer::difference_type.

Public Functions

inline device_malloc_allocator()#

No-argument constructor has no effect.

inline ~device_malloc_allocator()#

No-argument destructor has no effect.

inline device_malloc_allocator(device_malloc_allocator const&)#

Copy constructor has no effect.

template<typename U>
inline device_malloc_allocator(
device_malloc_allocator<U> const&,
)#

Constructor from other device_malloc_allocator has no effect.

device_malloc_allocator &operator=(
const device_malloc_allocator&,
) = default#
inline pointer address(reference r)#

Returns the address of an allocated object.

Returns:

&r.

inline const_pointer address(const_reference r)#

Returns the address an allocated object.

Returns:

&r.

inline pointer allocate(
size_type cnt,
const_pointer = const_pointer(static_cast<T*>(0)),
)#

Allocates storage for cnt objects.

Note

Memory allocated by this function must be deallocated with deallocate.

Parameters:

cnt – The number of objects to allocate.

Returns:

A pointer to uninitialized storage for cnt objects.

inline void deallocate(pointer p, size_type cnt) noexcept#

Deallocates storage for objects allocated with allocate.

Note

Memory deallocated by this function must previously have been allocated with allocate.

Parameters:
  • p – A pointer to the storage to deallocate.

  • cnt – The size of the previous allocation.

inline size_type max_size() const#

Returns the largest value n for which allocate(n) might succeed.

Returns:

The largest value n for which allocate(n) might succeed.

inline bool operator==(device_malloc_allocator const&) const#

Compares against another device_malloc_allocator for equality.

Returns:

true

inline bool operator!=(device_malloc_allocator const &a) const#

Compares against another device_malloc_allocator for inequality.

Returns:

false

template<typename U>
struct rebind#

The rebind metafunction provides the type of a device_malloc_allocator instantiated with another type.

Template Parameters:

U – The other type to use for instantiation.

Public Types

using other = device_malloc_allocator<U>#

The alias other gives the type of the rebound device_malloc_allocator.