7#ifndef HEFFTE_MAGMA_HELPERS_H
8#define HEFFTE_MAGMA_HELPERS_H
10#include "heffte_pack3d.h"
49 void scal(
int num_entries,
double scale_factor,
float *
data)
const;
51 void scal(
int num_entries,
double scale_factor,
double *
data)
const;
53 template<
typename precision_type>
54 void scal(
int num_entries,
double scale_factor, std::complex<precision_type> *
data)
const{
Namespace containing all HeFFTe methods and classes.
Definition heffte_backend_cuda.h:38
magma_handle(void *gpu_stream)
Constructor, calls magma_init() and creates a new queue on the given stream.
void scal(int num_entries, double scale_factor, std::complex< precision_type > *data) const
Template for the complex case, uses reinterpret_cast().
Definition heffte_magma_helpers.h:54
void scal(int num_entries, double scale_factor, float *data) const
Wrapper around magma_sscal()
~magma_handle()
Destructor, cleans the queue and calls magma_finalize().
void scal(int num_entries, double scale_factor, double *data) const
Wrapper around magma_dscal()
void * handle
Opaque pointer to a magma_queue.
Definition heffte_magma_helpers.h:58
Wrapper around a MAGMA handle.
Definition heffte_magma_helpers.h:30
void scal(int, double, scalar_type *) const
Wrapper around MAGMA sscal()/dscal(), but no-op in a CPU context.
Definition heffte_magma_helpers.h:34
magma_handle(void *)
No-op constructor, see the GPU specialization.
Definition heffte_magma_helpers.h:32
Wrapper around cufftHandle plans, set for float or double complex.
Definition heffte_backend_cuda.h:346