Skip to main content Link Menu Expand (external link) Document Search Copy Copied

Systems

/* thrust::cpp is a top-level alias for thrust::system::cpp. */namespace thrust::cpp { }
/* thrust::system is the namespace which contains specific Thrust backend systems. It also contains functionality for reporting error conditions originating from the operating system or other low-level application program interfaces such as the CUDA runtime. They are provided in a separate namespace for import convenience but are also aliased in the top-level thrust namespace for easy access. */namespace thrust::system { }
namespace thrust::system::omp { }
namespace thrust::system::cpp { }
/* thrust::system::cuda is the namespace containing functionality for allocating, manipulating, and deallocating memory available to Thrust's CUDA backend system. The identifiers are provided in a separate namespace underneath thrust::system for import convenience but are also aliased in the top-level thrust::cuda namespace for easy access. */namespace thrust::system::cuda { }
namespace thrust::system::tbb { }
/* thrust::omp is a top-level alias for thrust::system::omp. */namespace thrust::omp { }
/* thrust::tbb is a top-level alias for thrust::system::tbb. */namespace thrust::tbb { }
template <typename T> using thrust::system::cpp::pointer = see below;
template <typename T> using thrust::system::cpp::universal_pointer = see below;
template <typename T> using thrust::system::cpp::reference = see below;
template <typename T> using thrust::system::omp::pointer = see below;
template <typename T> using thrust::system::omp::universal_pointer = see below;
template <typename T> using thrust::system::omp::reference = see below;
template <typename T> using thrust::system::tbb::pointer = see below;
template <typename T> using thrust::system::tbb::universal_pointer = see below;
template <typename T> using thrust::system::tbb::reference = see below;

Types

Type Alias thrust::system::cpp::pointer

template <typename T> using pointer = thrust::pointer< T, thrust::system::cpp::tag, thrust::tagged_reference< T, thrust::system::cpp::tag > >; cpp::pointer stores a pointer to an object allocated in memory accessible by the cpp system. This type provides type safety when dispatching algorithms on ranges resident in cpp memory.

cpp::pointer has pointer semantics: it may be dereferenced and manipulated with pointer arithmetic.

cpp::pointer can be created with the function cpp::malloc, or by explicitly calling its constructor with a raw pointer.

The raw pointer encapsulated by a cpp::pointer may be obtained by eiter its get member function or the raw_pointer_cast function.

Note: cpp::pointer is not a “smart” pointer; it is the programmer’s responsibility to deallocate memory pointed to by cpp::pointer.

Template Parameters: T: specifies the type of the pointee.

See:

  • cpp::malloc
  • cpp::free
  • raw_pointer_cast

Type Alias thrust::system::cpp::universal_pointer

template <typename T> using universal_pointer = thrust::pointer< T, thrust::system::cpp::tag, typename std::add_lvalue_reference< T >::type >; cpp::universal_pointer stores a pointer to an object allocated in memory accessible by the cpp system and host systems.

cpp::universal_pointer has pointer semantics: it may be dereferenced and manipulated with pointer arithmetic.

cpp::universal_pointer can be created with cpp::universal_allocator or by explicitly calling its constructor with a raw pointer.

The raw pointer encapsulated by a cpp::universal_pointer may be obtained by eiter its get member function or the raw_pointer_cast function.

Note: cpp::universal_pointer is not a “smart” pointer; it is the programmer’s responsibility to deallocate memory pointed to by cpp::universal_pointer.

Template Parameters: T: specifies the type of the pointee.

See:

  • cpp::universal_allocator
  • raw_pointer_cast

Type Alias thrust::system::cpp::reference

template <typename T> using reference = thrust::reference< T, thrust::system::cpp::tag >; reference is a wrapped reference to an object stored in memory available to the cpp system. reference is the type of the result of dereferencing a cpp::pointer.

Template Parameters: T: Specifies the type of the referenced object.

Type Alias thrust::system::omp::pointer

template <typename T> using pointer = thrust::pointer< T, thrust::system::omp::tag, thrust::tagged_reference< T, thrust::system::omp::tag > >; omp::pointer stores a pointer to an object allocated in memory accessible by the omp system. This type provides type safety when dispatching algorithms on ranges resident in omp memory.

omp::pointer has pointer semantics: it may be dereferenced and manipulated with pointer arithmetic.

omp::pointer can be created with the function omp::malloc, or by explicitly calling its constructor with a raw pointer.

The raw pointer encapsulated by a omp::pointer may be obtained by eiter its get member function or the raw_pointer_cast function.

Note: omp::pointer is not a “smart” pointer; it is the programmer’s responsibility to deallocate memory pointed to by omp::pointer.

Template Parameters: T: specifies the type of the pointee.

See:

  • omp::malloc
  • omp::free
  • raw_pointer_cast

Type Alias thrust::system::omp::universal_pointer

template <typename T> using universal_pointer = thrust::pointer< T, thrust::system::omp::tag, typename std::add_lvalue_reference< T >::type >; omp::universal_pointer stores a pointer to an object allocated in memory accessible by the omp system and host systems.

omp::universal_pointer has pointer semantics: it may be dereferenced and manipulated with pointer arithmetic.

omp::universal_pointer can be created with omp::universal_allocator or by explicitly calling its constructor with a raw pointer.

The raw pointer encapsulated by a omp::universal_pointer may be obtained by eiter its get member function or the raw_pointer_cast function.

Note: omp::universal_pointer is not a “smart” pointer; it is the programmer’s responsibility to deallocate memory pointed to by omp::universal_pointer.

Template Parameters: T: specifies the type of the pointee.

See:

  • omp::universal_allocator
  • raw_pointer_cast

Type Alias thrust::system::omp::reference

template <typename T> using reference = thrust::tagged_reference< T, thrust::system::omp::tag >; reference is a wrapped reference to an object stored in memory available to the omp system. reference is the type of the result of dereferencing a omp::pointer.

Template Parameters: T: Specifies the type of the referenced object.

Type Alias thrust::system::tbb::pointer

template <typename T> using pointer = thrust::pointer< T, thrust::system::tbb::tag, thrust::tagged_reference< T, thrust::system::tbb::tag > >; tbb::pointer stores a pointer to an object allocated in memory accessible by the tbb system. This type provides type safety when dispatching algorithms on ranges resident in tbb memory.

tbb::pointer has pointer semantics: it may be dereferenced and manipulated with pointer arithmetic.

tbb::pointer can be created with the function tbb::malloc, or by explicitly calling its constructor with a raw pointer.

The raw pointer encapsulated by a tbb::pointer may be obtained by eiter its get member function or the raw_pointer_cast function.

Note: tbb::pointer is not a “smart” pointer; it is the programmer’s responsibility to deallocate memory pointed to by tbb::pointer.

Template Parameters: T: specifies the type of the pointee.

See:

  • tbb::malloc
  • tbb::free
  • raw_pointer_cast

Type Alias thrust::system::tbb::universal_pointer

template <typename T> using universal_pointer = thrust::pointer< T, thrust::system::tbb::tag, typename std::add_lvalue_reference< T >::type >; tbb::universal_pointer stores a pointer to an object allocated in memory accessible by the tbb system and host systems.

tbb::universal_pointer has pointer semantics: it may be dereferenced and manipulated with pointer arithmetic.

tbb::universal_pointer can be created with tbb::universal_allocator or by explicitly calling its constructor with a raw pointer.

The raw pointer encapsulated by a tbb::universal_pointer may be obtained by eiter its get member function or the raw_pointer_cast function.

Note: tbb::universal_pointer is not a “smart” pointer; it is the programmer’s responsibility to deallocate memory pointed to by tbb::universal_pointer.

Template Parameters: T: specifies the type of the pointee.

See:

  • tbb::universal_allocator
  • raw_pointer_cast

Type Alias thrust::system::tbb::reference

template <typename T> using reference = thrust::tagged_reference< T, thrust::system::tbb::tag >; reference is a wrapped reference to an object stored in memory available to the tbb system. reference is the type of the result of dereferencing a tbb::pointer.

Template Parameters: T: Specifies the type of the referenced object.