![]() |
PARALUTION
1.0.0
PARALUTION
|
Base class for operator and vector (i.e. global/local matrix/stencil/vector) classes, all the backend-related interface and data are defined here. More...
#include <base_paralution.hpp>
Public Member Functions | |
BaseParalution () | |
BaseParalution (const BaseParalution< ValueType > &src) | |
virtual | ~BaseParalution () |
BaseParalution< ValueType > & | operator= (const BaseParalution< ValueType > &src) |
virtual void | MoveToAccelerator (void)=0 |
Move the object to the Accelerator backend. More... | |
virtual void | MoveToHost (void)=0 |
Move the object to the Host backend. More... | |
virtual void | MoveToAcceleratorAsync (void) |
Move the object to the Accelerator backend with async move. More... | |
virtual void | MoveToHostAsync (void) |
Move the object to the Host backend with async move. More... | |
virtual void | Sync (void) |
void | CloneBackend (const BaseParalution< ValueType > &src) |
Clone the Backend descriptor from another object. More... | |
template<typename ValueType2 > | |
void | CloneBackend (const BaseParalution< ValueType2 > &src) |
Clone the Backend descriptor from another object with different template ValueType. More... | |
virtual void | info () const =0 |
Print the object information (properties, backends) More... | |
virtual void | Clear ()=0 |
Clear (free all data) the object. More... | |
Protected Member Functions | |
virtual bool | is_host (void) const =0 |
Return true if the object is on the host. More... | |
virtual bool | is_accel (void) const =0 |
Return true if the object is on the accelerator. More... | |
Protected Attributes | |
std::string | object_name_ |
Name of the object. More... | |
Paralution_Backend_Descriptor | local_backend_ |
Backend descriptor. More... | |
bool | asyncf |
size_t | global_obj_id |
Friends | |
class | BaseParalution< double > |
class | BaseParalution< float > |
class | BaseParalution< std::complex< double > > |
class | BaseParalution< std::complex< float > > |
class | BaseParalution< int > |
Base class for operator and vector (i.e. global/local matrix/stencil/vector) classes, all the backend-related interface and data are defined here.
paralution::BaseParalution< ValueType >::BaseParalution | ( | ) |
paralution::BaseParalution< ValueType >::BaseParalution | ( | const BaseParalution< ValueType > & | src | ) |
|
virtual |
|
pure virtual |
Clear (free all data) the object.
Implements paralution::ParalutionObj.
Implemented in paralution::LocalMatrix< ValueType >, paralution::LocalMatrix< ValueTypeL >, paralution::LocalMatrix< ValueTypeH >, paralution::LocalVector< ValueType >, paralution::LocalVector< ValueTypeL >, paralution::LocalVector< int >, paralution::LocalVector< ValueTypeH >, paralution::LocalStencil< ValueType >, and paralution::Vector< ValueType >.
void paralution::BaseParalution< ValueType >::CloneBackend | ( | const BaseParalution< ValueType > & | src | ) |
Clone the Backend descriptor from another object.
Referenced by paralution::AMG< OperatorType, VectorType, ValueType >::Aggregate(), paralution::SIRA< OperatorTypeH, VectorTypeH, ValueTypeH, OperatorTypeL, VectorTypeL, ValueTypeL >::Build_(), paralution::MultiColored< OperatorType, VectorType, ValueType >::Decompose_(), main(), paralution::LocalMatrix< ValueType >::MaximalIndependentSet(), paralution::LocalMatrix< ValueType >::MultiColoring(), and paralution::LocalMatrix< ValueType >::UpdateValuesCSR().
void paralution::BaseParalution< ValueType >::CloneBackend | ( | const BaseParalution< ValueType2 > & | src | ) |
Clone the Backend descriptor from another object with different template ValueType.
|
pure virtual |
Print the object information (properties, backends)
Implemented in paralution::LocalVector< ValueType >, paralution::LocalVector< ValueTypeL >, paralution::LocalVector< int >, paralution::LocalVector< ValueTypeH >, paralution::LocalStencil< ValueType >, paralution::LocalMatrix< ValueType >, paralution::LocalMatrix< ValueTypeL >, and paralution::LocalMatrix< ValueTypeH >.
|
protectedpure virtual |
Return true if the object is on the accelerator.
Implemented in paralution::LocalMatrix< ValueType >, paralution::LocalMatrix< ValueTypeL >, paralution::LocalMatrix< ValueTypeH >, paralution::LocalVector< ValueType >, paralution::LocalVector< ValueTypeL >, paralution::LocalVector< int >, paralution::LocalVector< ValueTypeH >, and paralution::LocalStencil< ValueType >.
Referenced by paralution::BaseParalution< ValueType >::CloneBackend().
|
protectedpure virtual |
Return true if the object is on the host.
Implemented in paralution::LocalMatrix< ValueType >, paralution::LocalMatrix< ValueTypeL >, paralution::LocalMatrix< ValueTypeH >, paralution::LocalVector< ValueType >, paralution::LocalVector< ValueTypeL >, paralution::LocalVector< int >, paralution::LocalVector< ValueTypeH >, and paralution::LocalStencil< ValueType >.
Referenced by paralution::BaseParalution< ValueType >::CloneBackend().
|
pure virtual |
Move the object to the Accelerator backend.
Implemented in paralution::LocalMatrix< ValueType >, paralution::LocalMatrix< ValueTypeL >, paralution::LocalMatrix< ValueTypeH >, paralution::LocalStencil< ValueType >, paralution::LocalVector< ValueType >, paralution::LocalVector< ValueTypeL >, paralution::LocalVector< int >, and paralution::LocalVector< ValueTypeH >.
|
virtual |
Move the object to the Accelerator backend with async move.
Reimplemented in paralution::LocalMatrix< ValueType >, paralution::LocalMatrix< ValueTypeL >, paralution::LocalMatrix< ValueTypeH >, paralution::LocalVector< ValueType >, paralution::LocalVector< ValueTypeL >, paralution::LocalVector< int >, and paralution::LocalVector< ValueTypeH >.
|
pure virtual |
Move the object to the Host backend.
Implemented in paralution::LocalMatrix< ValueType >, paralution::LocalMatrix< ValueTypeL >, paralution::LocalMatrix< ValueTypeH >, paralution::LocalStencil< ValueType >, paralution::LocalVector< ValueType >, paralution::LocalVector< ValueTypeL >, paralution::LocalVector< int >, and paralution::LocalVector< ValueTypeH >.
|
virtual |
Move the object to the Host backend with async move.
Reimplemented in paralution::LocalMatrix< ValueType >, paralution::LocalMatrix< ValueTypeL >, paralution::LocalMatrix< ValueTypeH >, paralution::LocalVector< ValueType >, paralution::LocalVector< ValueTypeL >, paralution::LocalVector< int >, and paralution::LocalVector< ValueTypeH >.
BaseParalution< ValueType > & paralution::BaseParalution< ValueType >::operator= | ( | const BaseParalution< ValueType > & | src | ) |
|
virtual |
|
friend |
|
friend |
|
friend |
|
friend |
|
friend |
|
protected |
|
protectedinherited |
|
protected |
Backend descriptor.
Referenced by paralution::BaseParalution< ValueType >::CloneBackend(), and paralution::LocalMatrix< ValueType >::CloneFrom().
|
protected |