|
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 |