Highly Efficient FFT for Exascale: HeFFTe v2.4
Loading...
Searching...
No Matches
heffte::backend::device_instance< tag::gpu > Struct Reference

The CUDA backend uses a CUDA stream. More...

#include <heffte_backend_cuda.h>

Public Types

using stream_type = cudaStream_t
 The type for the internal stream.
using stream_type = std::reference_wrapper<sycl::queue>
 The type for the internal stream.
using stream_type = hipStream_t
 The type for the internal stream.

Public Member Functions

 device_instance (cudaStream_t new_stream=nullptr)
 Constructor, sets up the stream.
cudaStream_t stream ()
 Returns the nullptr.
cudaStream_t stream () const
 Returns the nullptr (const case).
void synchronize_device () const
 Syncs the execution with the queue, no-op in the CPU case.
 device_instance ()
 Empty constructor.
 device_instance (sycl::queue &new_stream)
 Constructor assigning the queue.
 device_instance (std::reference_wrapper< sycl::queue > &new_stream)
 Constructor assigning from an existing wrapper.
sycl::queue & stream ()
 Returns the nullptr.
sycl::queue & stream () const
 Returns the nullptr.
void synchronize_device () const
 Syncs the execution with the queue.
 device_instance (hipStream_t new_stream=nullptr)
 Constructor, sets up the stream.
hipStream_t stream ()
 Returns the nullptr.
hipStream_t stream () const
 Returns the nullptr (const case).
void synchronize_device () const
 Syncs the execution with the queue.
virtual ~device_instance ()=default
 Default destructor.

Public Attributes

cudaStream_t _stream
 The CUDA stream to be used in all operations.
std::reference_wrapper< sycl::queue > _stream
 The sycl::queue, either user provided or created by heFFTe.
hipStream_t _stream
 The CUDA stream to be used in all operations.

Detailed Description

The CUDA backend uses a CUDA stream.

The ROCm backend uses a HIP stream.

Specialization that contains the sycl::queue needed for the DPC++ backend.


The documentation for this struct was generated from the following files: