SG++-Doxygen-Documentation
Loading...
Searching...
No Matches
sgpp::datadriven::DensityOCLMultiPlatform::OperationDensityOCLMultiPlatform< T > Class Template Reference

Class for opencl density multiplication and density right hand side vector. More...

#include <OperationDensityOCLMultiPlatform.hpp>

Inheritance diagram for sgpp::datadriven::DensityOCLMultiPlatform::OperationDensityOCLMultiPlatform< T >:
sgpp::datadriven::DensityOCLMultiPlatform::OperationDensity sgpp::base::OperationMatrix

Public Member Functions

void finalize_rhs_generation (sgpp::base::DataVector &b, size_t start_id, size_t chunksize) override
 
void finish_partial_mult (double *result, int start_id, int chunksize) override
 
void generateb (base::DataMatrix &dataset, sgpp::base::DataVector &b, size_t start_id=0, size_t chunksize=0) override
 Generates the right hand side vector for the density equation.
 
void initialize_alpha (double *alpha) override
 Use before calling partial_mult directly.
 
void initialize_dataset (base::DataMatrix &dataset) override
 
void mult (base::DataVector &alpha, base::DataVector &result) override
 Execute one matrix-vector multiplication with the density matrix.
 
 OperationDensityOCLMultiPlatform (base::Grid &grid, size_t dimensions, std::shared_ptr< base::OCLManagerMultiPlatform > manager, sgpp::base::OCLOperationConfiguration *parameters, T lambda, size_t platform_id, size_t device_id)
 Normal constructor.
 
 OperationDensityOCLMultiPlatform (int *gridpoints, size_t gridsize, size_t dimensions, std::shared_ptr< base::OCLManagerMultiPlatform > manager, sgpp::base::OCLOperationConfiguration *parameters, T lambda, size_t platform_id, size_t device_id)
 Constructor for mpi nodes - accepts grid als integer array.
 
void start_partial_mult (int start_id, int chunksize) override
 Execute a partial (startindex to startindex+chunksize) multiplication with the density matrix.
 
void start_rhs_generation (size_t start_id, size_t chunksize) override
 
 ~OperationDensityOCLMultiPlatform ()
 
- Public Member Functions inherited from sgpp::datadriven::DensityOCLMultiPlatform::OperationDensity
 OperationDensity ()
 
- Public Member Functions inherited from sgpp::base::OperationMatrix
 OperationMatrix ()
 Constructor.
 
virtual ~OperationMatrix ()
 Destructor.
 

Additional Inherited Members

- Static Public Member Functions inherited from sgpp::datadriven::DensityOCLMultiPlatform::OperationDensity
static void load_default_parameters (base::OCLOperationConfiguration *parameters)
 Generate the default parameters in die json configuration.
 

Detailed Description

template<typename T>
class sgpp::datadriven::DensityOCLMultiPlatform::OperationDensityOCLMultiPlatform< T >

Class for opencl density multiplication and density right hand side vector.

Constructor & Destructor Documentation

◆ OperationDensityOCLMultiPlatform() [1/2]

template<typename T >
sgpp::datadriven::DensityOCLMultiPlatform::OperationDensityOCLMultiPlatform< T >::OperationDensityOCLMultiPlatform ( base::Grid grid,
size_t  dimensions,
std::shared_ptr< base::OCLManagerMultiPlatform manager,
sgpp::base::OCLOperationConfiguration parameters,
lambda,
size_t  platform_id,
size_t  device_id 
)
inline

Normal constructor.

References grid(), and lambda.

◆ OperationDensityOCLMultiPlatform() [2/2]

template<typename T >
sgpp::datadriven::DensityOCLMultiPlatform::OperationDensityOCLMultiPlatform< T >::OperationDensityOCLMultiPlatform ( int *  gridpoints,
size_t  gridsize,
size_t  dimensions,
std::shared_ptr< base::OCLManagerMultiPlatform manager,
sgpp::base::OCLOperationConfiguration parameters,
lambda,
size_t  platform_id,
size_t  device_id 
)
inline

Constructor for mpi nodes - accepts grid als integer array.

References lambda.

◆ ~OperationDensityOCLMultiPlatform()

Member Function Documentation

◆ finalize_rhs_generation()

◆ finish_partial_mult()

template<typename T >
void sgpp::datadriven::DensityOCLMultiPlatform::OperationDensityOCLMultiPlatform< T >::finish_partial_mult ( double *  result,
int  start_id,
int  chunksize 
)
inlineoverridevirtual

◆ generateb()

◆ initialize_alpha()

template<typename T >
void sgpp::datadriven::DensityOCLMultiPlatform::OperationDensityOCLMultiPlatform< T >::initialize_alpha ( double *  alpha)
inlineoverridevirtual

◆ initialize_dataset()

◆ mult()

◆ start_partial_mult()

template<typename T >
void sgpp::datadriven::DensityOCLMultiPlatform::OperationDensityOCLMultiPlatform< T >::start_partial_mult ( int  start_id,
int  chunksize 
)
inlineoverridevirtual

Execute a partial (startindex to startindex+chunksize) multiplication with the density matrix.

Implements sgpp::datadriven::DensityOCLMultiPlatform::OperationDensity.

References sgpp::datadriven::DensityOCLMultiPlatform::KernelDensityMult< T >::start_mult().

◆ start_rhs_generation()

template<typename T >
void sgpp::datadriven::DensityOCLMultiPlatform::OperationDensityOCLMultiPlatform< T >::start_rhs_generation ( size_t  start_id,
size_t  chunksize 
)
inlineoverridevirtual

The documentation for this class was generated from the following file: