SG++-Doxygen-Documentation
sgpp::datadriven::StreamingOCLMultiPlatform::SourceBuilderMult< real_type > Class Template Reference

Class for creating compute kernels for the MultiEval operation \(v:= B^T \alpha\). More...

#include <SourceBuilderMult.hpp>

Inheritance diagram for sgpp::datadriven::StreamingOCLMultiPlatform::SourceBuilderMult< real_type >:
sgpp::base::KernelSourceBuilderBase< real_type >

Public Member Functions

std::string generateSource ()
 Entry point of source generator. More...
 
 SourceBuilderMult (std::shared_ptr< base::OCLDevice > device, json::Node &kernelConfiguration, size_t dims)
 Constructor. More...
 
- Public Member Functions inherited from sgpp::base::KernelSourceBuilderBase< real_type >
 KernelSourceBuilderBase ()
 

Additional Inherited Members

- Protected Member Functions inherited from sgpp::base::KernelSourceBuilderBase< real_type >
std::string constSuffix ()
 
std::string floatType ()
 
std::string intType ()
 
std::string reuseSource (std::string fileName)
 
void writeSource (std::string fileName, std::string source)
 
- Protected Attributes inherited from sgpp::base::KernelSourceBuilderBase< real_type >
std::vector< std::string > indent
 
- Static Protected Attributes inherited from sgpp::base::KernelSourceBuilderBase< real_type >
static const size_t MAX_INDENT_LEVEL
 

Detailed Description

template<typename real_type>
class sgpp::datadriven::StreamingOCLMultiPlatform::SourceBuilderMult< real_type >

Class for creating compute kernels for the MultiEval operation \(v:= B^T \alpha\).

This class uses the parameters of the provided configuration to create OpenCL source code. The generated code is specific to a single device, there each KernelMult requires its own SourceBuilderMult. For the code generation, a code fragment concatenation approach is used.

See also
StreamingOCLMultiPlatform::Configuration
StreamingOCLMultiPlatform::KernelMult

Constructor & Destructor Documentation

◆ SourceBuilderMult()

template<typename real_type>
sgpp::datadriven::StreamingOCLMultiPlatform::SourceBuilderMult< real_type >::SourceBuilderMult ( std::shared_ptr< base::OCLDevice device,
json::Node kernelConfiguration,
size_t  dims 
)
inline

Constructor.

Parameters
deviceThe device this code generators creates for
kernelConfigurationThe configuration for this device
dimsDimension of the data mining problem

Member Function Documentation

◆ generateSource()

template<typename real_type>
std::string sgpp::datadriven::StreamingOCLMultiPlatform::SourceBuilderMult< real_type >::generateSource ( )
inline

Entry point of source generator.

Creates compute kernel for the MultiEval operation.

Referenced by sgpp::datadriven::StreamingOCLMultiPlatform::KernelMult< T >::mult().


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