PARALUTION  1.0.0
PARALUTION
paralution::OCLAcceleratorVector< ValueType > Class Template Reference

#include <base_vector.hpp>

Inheritance diagram for paralution::OCLAcceleratorVector< ValueType >:
paralution::AcceleratorVector< ValueType > paralution::BaseVector< ValueType >

Public Member Functions

 OCLAcceleratorVector ()
 
 OCLAcceleratorVector (const Paralution_Backend_Descriptor local_backend)
 
virtual ~OCLAcceleratorVector ()
 
virtual void info (void) const
 Shows info about the object. More...
 
virtual void Allocate (const int n)
 Allocate a local vector with name and size. More...
 
virtual void SetDataPtr (ValueType **ptr, const int size)
 Initialize a vector with externally allocated data. More...
 
virtual void LeaveDataPtr (ValueType **ptr)
 Get a pointer from the vector data and free the vector object. More...
 
virtual void Clear (void)
 Clear (free) the vector. More...
 
virtual void Zeros (void)
 Set the values of the vector to zero. More...
 
virtual void Ones (void)
 Set the values of the vector to one. More...
 
virtual void SetValues (const ValueType val)
 Set the values of the vector to given argument. More...
 
virtual void CopyFrom (const BaseVector< ValueType > &src)
 Copy values from another vector. More...
 
virtual void CopyFrom (const BaseVector< ValueType > &src, const int src_offset, const int dst_offset, const int size)
 Copy data (not entire vector) from another vector with specified src/dst offsets and size. More...
 
virtual void CopyFromFloat (const BaseVector< float > &src)
 Copy values from another (float) vector. More...
 
virtual void CopyFromDouble (const BaseVector< double > &src)
 Copy values from another (double) vector. More...
 
virtual void CopyTo (BaseVector< ValueType > *dst) const
 Copy values to another vector. More...
 
virtual void CopyFromHost (const HostVector< ValueType > &src)
 Copy (accelerator vector) from host vector. More...
 
virtual void CopyToHost (HostVector< ValueType > *dst) const
 Copy (host vector) from accelerator vector. More...
 
virtual void CopyFromPermute (const BaseVector< ValueType > &src, const BaseVector< int > &permutation)
 Copy a vector under specified permutation (forward permutation) More...
 
virtual void CopyFromPermuteBackward (const BaseVector< ValueType > &src, const BaseVector< int > &permutation)
 Copy a vector under specified permutation (backward permutation) More...
 
virtual void Permute (const BaseVector< int > &permutation)
 Perform inplace permutation (forward) of the vector. More...
 
virtual void PermuteBackward (const BaseVector< int > &permutation)
 Perform inplace permutation (backward) of the vector. More...
 
virtual void AddScale (const BaseVector< ValueType > &x, const ValueType alpha)
 Perform vector update of type this = this + alpha*x. More...
 
virtual void ScaleAdd (const ValueType alpha, const BaseVector< ValueType > &x)
 Perform vector update of type this = alpha*this + x. More...
 
virtual void ScaleAddScale (const ValueType alpha, const BaseVector< ValueType > &x, const ValueType beta)
 Perform vector update of type this = alpha*this + x*beta. More...
 
virtual void ScaleAddScale (const ValueType alpha, const BaseVector< ValueType > &x, const ValueType beta, const int src_offset, const int dst_offset, const int size)
 
virtual void ScaleAdd2 (const ValueType alpha, const BaseVector< ValueType > &x, const ValueType beta, const BaseVector< ValueType > &y, const ValueType gamma)
 Perform vector update of type this = alpha*this + x*beta + y*gamma. More...
 
virtual void Scale (const ValueType alpha)
 Perform vector scaling this = alpha*this. More...
 
virtual void PartialSum (const BaseVector< ValueType > &x)
 Compute partial sum. More...
 
virtual ValueType Dot (const BaseVector< ValueType > &x) const
 Compute dot (scalar) product, return this^T y. More...
 
virtual ValueType DotNonConj (const BaseVector< ValueType > &x) const
 Compute non-conjugated dot (scalar) product, return this^T y. More...
 
virtual ValueType Norm (void) const
 Compute L2 norm of the vector, return = srqt(this^T this) More...
 
virtual ValueType Reduce (void) const
 Reduce vector. More...
 
virtual ValueType Asum (void) const
 Compute sum of absolute values of the vector (L1 norm), return = sum(|this|) More...
 
virtual int Amax (ValueType &value) const
 Compute the absolute max value of the vector, return = max(|this|) More...
 
virtual void PointWiseMult (const BaseVector< ValueType > &x)
 Perform point-wise multiplication (element-wise) of type this = this * x. More...
 
virtual void PointWiseMult (const BaseVector< ValueType > &x, const BaseVector< ValueType > &y)
 Perform point-wise multiplication (element-wise) of type this = x*y. More...
 
virtual void Power (const double power)
 
template<>
int Norm (void) const
 Compute L2 norm of the vector, return = srqt(this^T this) More...
 
virtual void CopyFromHostAsync (const HostVector< ValueType > &src)
 Async copy (accelerator vector) from host vector. More...
 
virtual void CopyToHostAsync (HostVector< ValueType > *dst) const
 Async copy (host vector) from accelerator vector. More...
 
int get_size (void) const
 Returns the size of the vector. More...
 
void set_backend (const Paralution_Backend_Descriptor local_backend)
 Copy the backend descriptor information. More...
 
virtual bool Check (void) const
 Check if everything is ok. More...
 
virtual void Assemble (const int *i, const ValueType *v, int size, const int n)
 Assembling. More...
 
virtual void CopyFromAsync (const BaseVector< ValueType > &vec)
 Async copy values from another vector. More...
 
virtual void CopyToAsync (BaseVector< ValueType > *vec) const
 Async copy values to another vector. More...
 
virtual void CopyFromData (const ValueType *data)
 
virtual void CopyToData (ValueType *data) const
 
virtual bool Restriction (const BaseVector< ValueType > &vec_fine, const BaseVector< int > &map)
 Restriction operator based on restriction mapping vector. More...
 
virtual bool Prolongation (const BaseVector< ValueType > &vec_coarse, const BaseVector< int > &map)
 Prolongation operator based on restriction(!) mapping vector. More...
 

Protected Attributes

int size_
 The size of the vector. More...
 
Paralution_Backend_Descriptor local_backend_
 Backend descriptor (local copy) More...
 

Private Attributes

cl_mem * vec_
 

Friends

class OCLAcceleratorVector< double >
 
class OCLAcceleratorVector< float >
 
class OCLAcceleratorVector< int >
 
class HostVector< ValueType >
 
class AcceleratorMatrix< ValueType >
 
class OCLAcceleratorMatrixCSR< ValueType >
 
class OCLAcceleratorMatrixMCSR< ValueType >
 
class OCLAcceleratorMatrixBCSR< ValueType >
 
class OCLAcceleratorMatrixCOO< ValueType >
 
class OCLAcceleratorMatrixDIA< ValueType >
 
class OCLAcceleratorMatrixELL< ValueType >
 
class OCLAcceleratorMatrixDENSE< ValueType >
 
class OCLAcceleratorMatrixHYB< ValueType >
 
class OCLAcceleratorMatrixCOO< double >
 
class OCLAcceleratorMatrixCOO< float >
 
class OCLAcceleratorMatrixCSR< double >
 
class OCLAcceleratorMatrixCSR< float >
 

Constructor & Destructor Documentation

template<typename ValueType >
paralution::OCLAcceleratorVector< ValueType >::OCLAcceleratorVector ( )
template<typename ValueType >
paralution::OCLAcceleratorVector< ValueType >::OCLAcceleratorVector ( const Paralution_Backend_Descriptor  local_backend)
template<typename ValueType >
paralution::OCLAcceleratorVector< ValueType >::~OCLAcceleratorVector ( )
virtual

Member Function Documentation

template<typename ValueType >
void paralution::OCLAcceleratorVector< ValueType >::AddScale ( const BaseVector< ValueType > &  x,
const ValueType  alpha 
)
virtual

Perform vector update of type this = this + alpha*x.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType >
int paralution::OCLAcceleratorVector< ValueType >::Amax ( ValueType &  value) const
virtual

Compute the absolute max value of the vector, return = max(|this|)

Implements paralution::BaseVector< ValueType >.

template<typename ValueType>
void paralution::BaseVector< ValueType >::Assemble ( const int i,
const ValueType *  v,
int  size,
const int  n 
)
virtualinherited
template<typename ValueType >
ValueType paralution::OCLAcceleratorVector< ValueType >::Asum ( void  ) const
virtual

Compute sum of absolute values of the vector (L1 norm), return = sum(|this|)

Implements paralution::BaseVector< ValueType >.

template<typename ValueType >
bool paralution::BaseVector< ValueType >::Check ( void  ) const
virtualinherited
template<typename ValueType >
void paralution::OCLAcceleratorVector< ValueType >::Clear ( void  )
virtual

Clear (free) the vector.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType >
void paralution::OCLAcceleratorVector< ValueType >::CopyFrom ( const BaseVector< ValueType > &  vec)
virtual
template<typename ValueType >
void paralution::OCLAcceleratorVector< ValueType >::CopyFrom ( const BaseVector< ValueType > &  src,
const int  src_offset,
const int  dst_offset,
const int  size 
)
virtual

Copy data (not entire vector) from another vector with specified src/dst offsets and size.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType>
void paralution::BaseVector< ValueType >::CopyFromAsync ( const BaseVector< ValueType > &  vec)
virtualinherited

Async copy values from another vector.

Reimplemented in paralution::GPUAcceleratorVector< ValueType >.

Referenced by paralution::LocalVector< ValueType >::MoveToHostAsync().

template<typename ValueType>
void paralution::BaseVector< ValueType >::CopyFromData ( const ValueType *  data)
virtualinherited
template<typename ValueType >
void paralution::OCLAcceleratorVector< ValueType >::CopyFromDouble ( const BaseVector< double > &  vec)
virtual

Copy values from another (double) vector.

Reimplemented from paralution::BaseVector< ValueType >.

template<typename ValueType >
void paralution::OCLAcceleratorVector< ValueType >::CopyFromFloat ( const BaseVector< float > &  vec)
virtual

Copy values from another (float) vector.

Reimplemented from paralution::BaseVector< ValueType >.

template<typename ValueType >
void paralution::OCLAcceleratorVector< ValueType >::CopyFromHost ( const HostVector< ValueType > &  src)
virtual

Copy (accelerator vector) from host vector.

Implements paralution::AcceleratorVector< ValueType >.

template<typename ValueType>
void paralution::AcceleratorVector< ValueType >::CopyFromHostAsync ( const HostVector< ValueType > &  src)
virtualinherited

Async copy (accelerator vector) from host vector.

Reimplemented in paralution::GPUAcceleratorVector< ValueType >.

template<typename ValueType >
void paralution::OCLAcceleratorVector< ValueType >::CopyFromPermute ( const BaseVector< ValueType > &  src,
const BaseVector< int > &  permutation 
)
virtual

Copy a vector under specified permutation (forward permutation)

Implements paralution::BaseVector< ValueType >.

template<typename ValueType >
void paralution::OCLAcceleratorVector< ValueType >::CopyFromPermuteBackward ( const BaseVector< ValueType > &  src,
const BaseVector< int > &  permutation 
)
virtual

Copy a vector under specified permutation (backward permutation)

Implements paralution::BaseVector< ValueType >.

template<typename ValueType >
void paralution::OCLAcceleratorVector< ValueType >::CopyTo ( BaseVector< ValueType > *  vec) const
virtual

Copy values to another vector.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType>
void paralution::BaseVector< ValueType >::CopyToAsync ( BaseVector< ValueType > *  vec) const
virtualinherited

Async copy values to another vector.

Reimplemented in paralution::GPUAcceleratorVector< ValueType >.

template<typename ValueType>
void paralution::BaseVector< ValueType >::CopyToData ( ValueType *  data) const
virtualinherited
template<typename ValueType >
void paralution::OCLAcceleratorVector< ValueType >::CopyToHost ( HostVector< ValueType > *  dst) const
virtual

Copy (host vector) from accelerator vector.

Implements paralution::AcceleratorVector< ValueType >.

template<typename ValueType>
void paralution::AcceleratorVector< ValueType >::CopyToHostAsync ( HostVector< ValueType > *  dst) const
virtualinherited

Async copy (host vector) from accelerator vector.

Reimplemented in paralution::GPUAcceleratorVector< ValueType >.

template<typename ValueType >
ValueType paralution::OCLAcceleratorVector< ValueType >::Dot ( const BaseVector< ValueType > &  x) const
virtual

Compute dot (scalar) product, return this^T y.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType >
ValueType paralution::OCLAcceleratorVector< ValueType >::DotNonConj ( const BaseVector< ValueType > &  x) const
virtual

Compute non-conjugated dot (scalar) product, return this^T y.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType >
int paralution::BaseVector< ValueType >::get_size ( void  ) const
inlineinherited

Returns the size of the vector.

Referenced by paralution::MICAcceleratorVector< ValueType >::AddScale(), paralution::OCLAcceleratorVector< ValueType >::AddScale(), paralution::HostMatrixCSR< ValueType >::AMGAggregation(), paralution::HostMatrixCSR< ValueType >::AMGSmoothedAggregation(), paralution::HostStencilLaplace2D< ValueType >::Apply(), paralution::HostMatrixBCSR< ValueType >::Apply(), paralution::HostMatrixDENSE< ValueType >::Apply(), paralution::MICAcceleratorMatrixMCSR< ValueType >::Apply(), paralution::HostMatrixDIA< ValueType >::Apply(), paralution::HostMatrixHYB< ValueType >::Apply(), paralution::MICAcceleratorMatrixCSR< ValueType >::Apply(), paralution::MICAcceleratorMatrixDIA< ValueType >::Apply(), paralution::MICAcceleratorMatrixELL< ValueType >::Apply(), paralution::HostMatrixMCSR< ValueType >::Apply(), paralution::MICAcceleratorMatrixCOO< ValueType >::Apply(), paralution::HostMatrixELL< ValueType >::Apply(), paralution::OCLAcceleratorMatrixMCSR< ValueType >::Apply(), paralution::OCLAcceleratorMatrixDENSE< ValueType >::Apply(), paralution::MICAcceleratorMatrixHYB< ValueType >::Apply(), paralution::OCLAcceleratorMatrixCOO< ValueType >::Apply(), paralution::OCLAcceleratorMatrixDIA< ValueType >::Apply(), paralution::OCLAcceleratorMatrixELL< ValueType >::Apply(), paralution::OCLAcceleratorMatrixHYB< ValueType >::Apply(), paralution::HostMatrixCOO< ValueType >::Apply(), paralution::OCLAcceleratorMatrixCSR< ValueType >::Apply(), paralution::HostMatrixCSR< ValueType >::Apply(), paralution::HostStencilLaplace2D< ValueType >::ApplyAdd(), paralution::HostMatrixBCSR< ValueType >::ApplyAdd(), paralution::HostMatrixDENSE< ValueType >::ApplyAdd(), paralution::MICAcceleratorMatrixMCSR< ValueType >::ApplyAdd(), paralution::HostMatrixDIA< ValueType >::ApplyAdd(), paralution::HostMatrixHYB< ValueType >::ApplyAdd(), paralution::MICAcceleratorMatrixCSR< ValueType >::ApplyAdd(), paralution::MICAcceleratorMatrixDIA< ValueType >::ApplyAdd(), paralution::MICAcceleratorMatrixELL< ValueType >::ApplyAdd(), paralution::HostMatrixELL< ValueType >::ApplyAdd(), paralution::HostMatrixMCSR< ValueType >::ApplyAdd(), paralution::MICAcceleratorMatrixCOO< ValueType >::ApplyAdd(), paralution::OCLAcceleratorMatrixMCSR< ValueType >::ApplyAdd(), paralution::MICAcceleratorMatrixHYB< ValueType >::ApplyAdd(), paralution::OCLAcceleratorMatrixCOO< ValueType >::ApplyAdd(), paralution::OCLAcceleratorMatrixDIA< ValueType >::ApplyAdd(), paralution::OCLAcceleratorMatrixELL< ValueType >::ApplyAdd(), paralution::OCLAcceleratorMatrixHYB< ValueType >::ApplyAdd(), paralution::HostMatrixCOO< ValueType >::ApplyAdd(), paralution::OCLAcceleratorMatrixCSR< ValueType >::ApplyAdd(), paralution::HostMatrixCSR< ValueType >::ApplyAdd(), paralution::MICAcceleratorVector< ValueType >::CopyFrom(), paralution::OCLAcceleratorVector< ValueType >::CopyFrom(), paralution::OCLAcceleratorVector< ValueType >::CopyFromDouble(), paralution::OCLAcceleratorVector< ValueType >::CopyFromFloat(), paralution::MICAcceleratorVector< ValueType >::CopyFromHost(), paralution::OCLAcceleratorVector< ValueType >::CopyFromHost(), paralution::MICAcceleratorVector< ValueType >::CopyFromPermute(), paralution::OCLAcceleratorVector< ValueType >::CopyFromPermute(), paralution::MICAcceleratorVector< ValueType >::CopyFromPermuteBackward(), paralution::OCLAcceleratorVector< ValueType >::CopyFromPermuteBackward(), paralution::MICAcceleratorVector< ValueType >::CopyTo(), paralution::OCLAcceleratorVector< ValueType >::CopyTo(), paralution::MICAcceleratorVector< ValueType >::CopyToHost(), paralution::OCLAcceleratorVector< ValueType >::CopyToHost(), paralution::HostMatrixCSR< ValueType >::CreateFromMap(), paralution::OCLAcceleratorMatrixCSR< ValueType >::DiagonalMatrixMultL(), paralution::HostMatrixCSR< ValueType >::DiagonalMatrixMultL(), paralution::OCLAcceleratorMatrixCSR< ValueType >::DiagonalMatrixMultR(), paralution::HostMatrixCSR< ValueType >::DiagonalMatrixMultR(), paralution::MICAcceleratorVector< ValueType >::Dot(), paralution::OCLAcceleratorVector< ValueType >::Dot(), paralution::OCLAcceleratorVector< ValueType >::DotNonConj(), paralution::OCLAcceleratorMatrixDENSE< ValueType >::ExtractColumnVector(), paralution::HostMatrixDENSE< ValueType >::ExtractColumnVector(), paralution::OCLAcceleratorMatrixCSR< ValueType >::ExtractColumnVector(), paralution::HostMatrixCSR< ValueType >::ExtractColumnVector(), paralution::OCLAcceleratorMatrixCSR< ValueType >::ExtractDiagonal(), paralution::HostMatrixCSR< ValueType >::ExtractDiagonal(), paralution::OCLAcceleratorMatrixCSR< ValueType >::ExtractInverseDiagonal(), paralution::HostMatrixCSR< ValueType >::ExtractInverseDiagonal(), paralution::OCLAcceleratorMatrixDENSE< ValueType >::ExtractRowVector(), paralution::HostMatrixDENSE< ValueType >::ExtractRowVector(), paralution::HostMatrixCSR< ValueType >::ExtractRowVector(), paralution::HostMatrixDENSE< ValueType >::Householder(), paralution::HostMatrixCSR< ValueType >::LLSolve(), paralution::HostMatrixCSR< ValueType >::LSolve(), paralution::HostMatrixMCSR< ValueType >::LUSolve(), paralution::HostMatrixDENSE< ValueType >::LUSolve(), paralution::HostMatrixCSR< ValueType >::LUSolve(), paralution::OCLAcceleratorMatrixCSR< ValueType >::MaximalIndependentSet(), paralution::OCLAcceleratorMatrixCSR< ValueType >::MultiColoring(), paralution::HostMatrixCSR< ValueType >::MultiColoring(), paralution::HostMatrixCOO< ValueType >::Permute(), paralution::OCLAcceleratorMatrixCSR< ValueType >::Permute(), paralution::MICAcceleratorVector< ValueType >::Permute(), paralution::OCLAcceleratorVector< ValueType >::Permute(), paralution::HostMatrixCSR< ValueType >::Permute(), paralution::HostMatrixCOO< ValueType >::PermuteBackward(), paralution::MICAcceleratorVector< ValueType >::PermuteBackward(), paralution::OCLAcceleratorVector< ValueType >::PermuteBackward(), paralution::MICAcceleratorVector< ValueType >::PointWiseMult(), paralution::OCLAcceleratorVector< ValueType >::PointWiseMult(), paralution::HostMatrixDENSE< ValueType >::QRSolve(), paralution::OCLAcceleratorMatrixDENSE< ValueType >::ReplaceColumnVector(), paralution::HostMatrixDENSE< ValueType >::ReplaceColumnVector(), paralution::OCLAcceleratorMatrixCSR< ValueType >::ReplaceColumnVector(), paralution::HostMatrixCSR< ValueType >::ReplaceColumnVector(), paralution::OCLAcceleratorMatrixDENSE< ValueType >::ReplaceRowVector(), paralution::HostMatrixDENSE< ValueType >::ReplaceRowVector(), paralution::HostMatrixCSR< ValueType >::ReplaceRowVector(), paralution::MICAcceleratorVector< ValueType >::ScaleAdd(), paralution::OCLAcceleratorVector< ValueType >::ScaleAdd(), paralution::MICAcceleratorVector< ValueType >::ScaleAdd2(), paralution::OCLAcceleratorVector< ValueType >::ScaleAdd2(), paralution::MICAcceleratorVector< ValueType >::ScaleAddScale(), paralution::OCLAcceleratorVector< ValueType >::ScaleAddScale(), paralution::HostMatrixCSR< ValueType >::SPAI(), paralution::HostMatrixCSR< ValueType >::USolve(), and paralution::HostMatrixCSR< ValueType >::ZeroBlockPermutation().

template<typename ValueType >
void paralution::OCLAcceleratorVector< ValueType >::info ( void  ) const
virtual

Shows info about the object.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType >
void paralution::OCLAcceleratorVector< ValueType >::LeaveDataPtr ( ValueType **  ptr)
virtual

Get a pointer from the vector data and free the vector object.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType >
ValueType paralution::OCLAcceleratorVector< ValueType >::Norm ( void  ) const
virtual

Compute L2 norm of the vector, return = srqt(this^T this)

Implements paralution::BaseVector< ValueType >.

template<>
int paralution::OCLAcceleratorVector< int >::Norm ( void  ) const
virtual

Compute L2 norm of the vector, return = srqt(this^T this)

Implements paralution::BaseVector< ValueType >.

template<typename ValueType >
void paralution::OCLAcceleratorVector< ValueType >::Ones ( void  )
virtual

Set the values of the vector to one.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType >
void paralution::OCLAcceleratorVector< ValueType >::PartialSum ( const BaseVector< ValueType > &  x)
virtual

Compute partial sum.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType >
void paralution::OCLAcceleratorVector< ValueType >::Permute ( const BaseVector< int > &  permutation)
virtual

Perform inplace permutation (forward) of the vector.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType >
void paralution::OCLAcceleratorVector< ValueType >::PermuteBackward ( const BaseVector< int > &  permutation)
virtual

Perform inplace permutation (backward) of the vector.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType >
void paralution::OCLAcceleratorVector< ValueType >::PointWiseMult ( const BaseVector< ValueType > &  x)
virtual

Perform point-wise multiplication (element-wise) of type this = this * x.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType >
void paralution::OCLAcceleratorVector< ValueType >::PointWiseMult ( const BaseVector< ValueType > &  x,
const BaseVector< ValueType > &  y 
)
virtual

Perform point-wise multiplication (element-wise) of type this = x*y.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType >
void paralution::OCLAcceleratorVector< ValueType >::Power ( const double  power)
virtual
template<typename ValueType>
bool paralution::BaseVector< ValueType >::Prolongation ( const BaseVector< ValueType > &  vec_coarse,
const BaseVector< int > &  map 
)
virtualinherited

Prolongation operator based on restriction(!) mapping vector.

Reimplemented in paralution::HostVector< ValueType >, paralution::HostVector< ValueTypeL >, paralution::HostVector< int >, and paralution::HostVector< ValueTypeH >.

template<typename ValueType >
ValueType paralution::OCLAcceleratorVector< ValueType >::Reduce ( void  ) const
virtual

Reduce vector.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType>
bool paralution::BaseVector< ValueType >::Restriction ( const BaseVector< ValueType > &  vec_fine,
const BaseVector< int > &  map 
)
virtualinherited
template<typename ValueType >
void paralution::OCLAcceleratorVector< ValueType >::Scale ( const ValueType  alpha)
virtual

Perform vector scaling this = alpha*this.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType >
void paralution::OCLAcceleratorVector< ValueType >::ScaleAdd ( const ValueType  alpha,
const BaseVector< ValueType > &  x 
)
virtual

Perform vector update of type this = alpha*this + x.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType >
void paralution::OCLAcceleratorVector< ValueType >::ScaleAdd2 ( const ValueType  alpha,
const BaseVector< ValueType > &  x,
const ValueType  beta,
const BaseVector< ValueType > &  y,
const ValueType  gamma 
)
virtual

Perform vector update of type this = alpha*this + x*beta + y*gamma.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType >
void paralution::OCLAcceleratorVector< ValueType >::ScaleAddScale ( const ValueType  alpha,
const BaseVector< ValueType > &  x,
const ValueType  beta 
)
virtual

Perform vector update of type this = alpha*this + x*beta.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType >
void paralution::OCLAcceleratorVector< ValueType >::ScaleAddScale ( const ValueType  alpha,
const BaseVector< ValueType > &  x,
const ValueType  beta,
const int  src_offset,
const int  dst_offset,
const int  size 
)
virtual
template<typename ValueType >
void paralution::BaseVector< ValueType >::set_backend ( const Paralution_Backend_Descriptor  local_backend)
inherited

Copy the backend descriptor information.

template<typename ValueType >
void paralution::OCLAcceleratorVector< ValueType >::SetDataPtr ( ValueType **  ptr,
const int  size 
)
virtual

Initialize a vector with externally allocated data.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType >
void paralution::OCLAcceleratorVector< ValueType >::SetValues ( const ValueType  val)
virtual

Set the values of the vector to given argument.

Implements paralution::BaseVector< ValueType >.

template<typename ValueType >
void paralution::OCLAcceleratorVector< ValueType >::Zeros ( void  )
virtual

Set the values of the vector to zero.

Implements paralution::BaseVector< ValueType >.

Referenced by paralution::OCLAcceleratorMatrixCOO< ValueType >::Apply().

Friends And Related Function Documentation

template<class ValueType>
friend class AcceleratorMatrix< ValueType >
friend
template<class ValueType>
friend class HostVector< ValueType >
friend
template<class ValueType>
friend class OCLAcceleratorMatrixBCSR< ValueType >
friend
template<class ValueType>
friend class OCLAcceleratorMatrixCOO< double >
friend
template<class ValueType>
friend class OCLAcceleratorMatrixCOO< float >
friend
template<class ValueType>
friend class OCLAcceleratorMatrixCOO< ValueType >
friend
template<class ValueType>
friend class OCLAcceleratorMatrixCSR< double >
friend
template<class ValueType>
friend class OCLAcceleratorMatrixCSR< float >
friend
template<class ValueType>
friend class OCLAcceleratorMatrixCSR< ValueType >
friend
template<class ValueType>
friend class OCLAcceleratorMatrixDENSE< ValueType >
friend
template<class ValueType>
friend class OCLAcceleratorMatrixDIA< ValueType >
friend
template<class ValueType>
friend class OCLAcceleratorMatrixELL< ValueType >
friend
template<class ValueType>
friend class OCLAcceleratorMatrixHYB< ValueType >
friend
template<class ValueType>
friend class OCLAcceleratorMatrixMCSR< ValueType >
friend
template<class ValueType>
friend class OCLAcceleratorVector< double >
friend
template<class ValueType>
friend class OCLAcceleratorVector< float >
friend
template<class ValueType>
friend class OCLAcceleratorVector< int >
friend

Field Documentation

template<typename ValueType>
Paralution_Backend_Descriptor paralution::BaseVector< ValueType >::local_backend_
protectedinherited

Backend descriptor (local copy)

template<class ValueType>
cl_mem* paralution::OCLAcceleratorVector< ValueType >::vec_
private

Referenced by paralution::OCLAcceleratorMatrixMCSR< ValueType >::Apply(), paralution::OCLAcceleratorMatrixDENSE< ValueType >::Apply(), paralution::OCLAcceleratorMatrixELL< ValueType >::Apply(), paralution::OCLAcceleratorMatrixCOO< ValueType >::Apply(), paralution::OCLAcceleratorMatrixDIA< ValueType >::Apply(), paralution::OCLAcceleratorMatrixHYB< ValueType >::Apply(), paralution::OCLAcceleratorMatrixCSR< ValueType >::Apply(), paralution::OCLAcceleratorMatrixMCSR< ValueType >::ApplyAdd(), paralution::OCLAcceleratorMatrixCOO< ValueType >::ApplyAdd(), paralution::OCLAcceleratorMatrixELL< ValueType >::ApplyAdd(), paralution::OCLAcceleratorMatrixDIA< ValueType >::ApplyAdd(), paralution::OCLAcceleratorMatrixHYB< ValueType >::ApplyAdd(), paralution::OCLAcceleratorMatrixCSR< ValueType >::ApplyAdd(), paralution::OCLAcceleratorVector< ValueType >::CopyFrom(), paralution::OCLAcceleratorVector< ValueType >::CopyFromDouble(), paralution::OCLAcceleratorVector< ValueType >::CopyFromFloat(), paralution::OCLAcceleratorVector< ValueType >::CopyFromPermute(), paralution::OCLAcceleratorVector< ValueType >::CopyFromPermuteBackward(), paralution::OCLAcceleratorVector< ValueType >::CopyTo(), paralution::OCLAcceleratorMatrixDENSE< ValueType >::ExtractColumnVector(), paralution::OCLAcceleratorMatrixCSR< ValueType >::ExtractColumnVector(), paralution::OCLAcceleratorMatrixDENSE< ValueType >::ExtractRowVector(), paralution::OCLAcceleratorMatrixCSR< ValueType >::MaximalIndependentSet(), paralution::OCLAcceleratorMatrixCSR< ValueType >::MultiColoring(), paralution::OCLAcceleratorVector< ValueType >::Permute(), paralution::OCLAcceleratorVector< ValueType >::PermuteBackward(), paralution::OCLAcceleratorVector< ValueType >::PointWiseMult(), paralution::OCLAcceleratorMatrixDENSE< ValueType >::ReplaceColumnVector(), paralution::OCLAcceleratorMatrixCSR< ValueType >::ReplaceColumnVector(), paralution::OCLAcceleratorMatrixDENSE< ValueType >::ReplaceRowVector(), paralution::OCLAcceleratorVector< ValueType >::ScaleAdd2(), and paralution::OCLAcceleratorVector< ValueType >::ScaleAddScale().


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