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.
 

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: