LAMA
/home/brandes/workspace/LAMA/src/lama/ContextAccess.hpp File Reference

Definition of an access class to access a context. More...

#include <lama/config.hpp>
#include <lama/BaseAccess.hpp>
#include <lama/Context.hpp>
#include <logging/logging.hpp>

Go to the source code of this file.

Data Structures

class  lama::ContextAccess
 This class is used for accessing a Context to enable computations on it. More...

Namespaces

namespace  lama
 

The namespace lama holds everything of the C++ Library lama.


Defines

#define LAMA_CONTEXT_ACCESS(context)   lama::ContextAccess LAMA_Ctx_Access__( context, __FILE__, __LINE__ )
 Macro that should be used for any context access.

Detailed Description

Definition of an access class to access a context.

Author:
Thomas Brandes
Date:
14.07.2011 $Id$

Define Documentation

#define LAMA_CONTEXT_ACCESS (   context)    lama::ContextAccess LAMA_Ctx_Access__( context, __FILE__, __LINE__ )

Macro that should be used for any context access.

  {   
      LAMA_CONTEXT_ACCESS( cudaContext );
      ...   // computations on CUDA device
      // context is released at end of the scope by destructor of access object.
  }   

Referenced by lama::CUDAHostContext::allocate(), lama::CUDAContext::allocate(), lama::JDSStorage< T >::allocate(), lama::LAMAArrayUtils::assign(), lama::LAMAArrayUtils::assignImpl2(), lama::ELLStorage< T >::buildCSR(), lama::JDSStorage< T >::buildCSR(), lama::CSRStorage< T >::buildCSR(), lama::ELLStorage< T >::buildRowIndexes(), lama::ELLStorage< T >::check(), lama::JDSStorage< T >::check(), lama::JDSStorage< T >::checkDiagonalProperty(), lama::ELLStorage< T >::checkDiagonalProperty(), lama::CSRStorage< T >::checkDiagonalProperty(), lama::MatrixStorage< T >::convertCSR2CSC(), lama::CUDAStreamSyncToken::createEvent(), lama::CUDAStreamSyncToken::createTimingEvent(), lama::DenseVector< T >::dotProduct(), lama::ELLStorage< T >::ELLStorage(), tracing::TraceConfig::enableVampirTrace(), lama::CUDAHostContext::free(), lama::CUDAContext::free(), lama::LAMAArrayUtils::gather(), lama::ELLStorage< T >::getDiagonalImpl(), lama::JDSStorage< T >::getDiagonalImpl(), lama::ELLStorage< T >::getNumValues(), lama::ELLStorage< T >::getRowImpl(), lama::JDSStorage< T >::getRowImpl(), lama::CUDAStreamSyncToken::getTime(), lama::ELLStorage< T >::getValue(), lama::JDSStorage< T >::getValue(), lama::DenseVector< T >::invert(), lama::JDSStorage< T >::jacobiIterate(), lama::COOStorage< T >::jacobiIterate(), lama::ELLStorage< T >::jacobiIterate(), lama::CSRStorage< T >::jacobiIterate(), lama::JDSStorage< T >::jacobiIterateHalo(), lama::ELLStorage< T >::jacobiIterateHalo(), lama::CSRStorage< T >::jacobiIterateHalo(), lama::DenseVector< T >::l1Norm(), lama::DenseVector< T >::l2Norm(), lama::ELLStorage< T >::matrixAddMatrixELL(), lama::DenseStorageView< T >::matrixTimesMatrixDense(), lama::ELLStorage< T >::matrixTimesMatrixELL(), lama::JDSStorage< T >::matrixTimesVector(), lama::DIAStorage< T >::matrixTimesVector(), lama::DenseStorageView< T >::matrixTimesVector(), lama::COOStorage< T >::matrixTimesVector(), lama::ELLStorage< T >::matrixTimesVector(), lama::CSRStorage< T >::matrixTimesVector(), lama::ELLStorage< T >::matrixTimesVectorAsync(), lama::CSRStorage< T >::matrixTimesVectorAsync(), lama::COOStorage< T >::matrixTimesVectorAsyncToDo(), lama::CSRStorage< T >::matrixTimesVectorN(), lama::DenseStorageView< T >::maxDiffNormImpl(), lama::CSRStorage< T >::maxDiffNormImpl(), lama::DenseVector< T >::maxNorm(), lama::CUDAContext::memcpy(), lama::CUDAHostContext::memcpyAsync(), lama::CUDAContext::memcpyAsync(), lama::CUDAContext::memcpyAsyncFromCUDAHost(), lama::CUDAContext::memcpyAsyncToCUDAHost(), lama::CUDAContext::memcpyFromCUDAHost(), lama::CUDAContext::memcpyFromHost(), lama::CUDAContext::memcpyToCUDAHost(), lama::CUDAContext::memcpyToHost(), lama::CUDAStreamSyncToken::probeEvent(), lama::CUDAStreamSyncToken::queryEvent(), lama::CUDAStreamSyncToken::recordEvent(), lama::ELLStorage< T >::scaleImpl(), lama::JDSStorage< T >::scaleImpl(), lama::JDSStorage< T >::setCSRDataImpl(), lama::ELLStorage< T >::setCSRDataImpl(), lama::CSRStorage< T >::setCSRDataSwap(), lama::ELLStorage< T >::setDiagonalImpl(), lama::JDSStorage< T >::setDiagonalImpl(), lama::ELLStorage< T >::setIdentity(), lama::JDSStorage< T >::setIdentity(), lama::JDSStorage< T >::setupData(), lama::JDSStorage< T >::sortRows(), lama::CUDAStreamSyncToken::synchronizeEvent(), lama::DenseVector< T >::vectorPlusVector(), and lama::CUDAStreamSyncToken::wait().