PPL Logo

MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE > Class Template Reference

The MSA1D class is a handle to a distributed shared array of items of data type ENTRY. More...

#include <msa-distArray.h>

Inheritance diagram for MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >:

Inheritance graph
[legend]
Collaboration diagram for MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >:

Collaboration graph
[legend]

Public Types

typedef MSA_CacheGroup< ENTRY,
ENTRY_OPS_CLASS,
ENTRIES_PER_PAGE > 
CacheGroup_t
typedef CProxy_MSA_CacheGroup
< ENTRY, ENTRY_OPS_CLASS,
ENTRIES_PER_PAGE > 
CProxy_CacheGroup_t
typedef CProxy_MSA_PageArray
< ENTRY, ENTRY_OPS_CLASS,
ENTRIES_PER_PAGE > 
CProxy_PageArray_t
typedef ENTRY T
typedef ENTRY_OPS_CLASS OPS
typedef MSA1D< ENTRY,
ENTRY_OPS_CLASS,
ENTRIES_PER_PAGE > 
thisMSA
typedef MSAHandle< thisMSAHandle
typedef MSARead< thisMSARead
typedef MSAAccum< thisMSAAccum
typedef MSAWrite< thisMSAWrite

Public Member Functions

 MSA1D ()
virtual void pup (PUP::er &p)
 MSA1D (unsigned int nEntries_, unsigned int num_wrkrs, unsigned int maxBytes=MSA_DEFAULT_MAX_BYTES)
 Create a completely new MSA array.
 MSA1D (CProxy_CacheGroup_t cg_)
 ~MSA1D ()
void changePE ()
 this function is supposed to be called when the thread/object using this array migrates to another PE.
unsigned int length () const
 Get the total length of the array, across all processors.
const CProxy_CacheGroup_tgetCacheGroup () const
unsigned int getNumEntriesPerPage () const
unsigned int getPageIndex (unsigned int idx)
 Return the page this entry is stored at.
unsigned int getOffsetWithinPage (unsigned int idx)
 Return the offset, in entries, that this entry is stored at within a page.
void enroll (int num_workers)
ENTRY & getPageBottom (unsigned int idx, MSA_Page_Fault_t accessMode)
void FreeMem ()
void Prefetch (unsigned int start, unsigned int end)
 Non-blocking prefetch of entries from start to end, inclusive.
int WaitAll ()
 Block until all prefetched pages arrive.
void Unlock ()
 Unlock all locked pages.
void Unlock (unsigned int start, unsigned int end)
 start and end are element indexes.
Write getInitialWrite ()
Accum getInitialAccum ()

Protected Member Functions

const ENTRY * readablePage (unsigned int page)
const ENTRY * readablePage2 (unsigned int page)
ENTRY * writeablePage (unsigned int page, unsigned int offset)
const ENTRY & get (unsigned int idx)
 Return a read-only copy of the element at idx.
const ENTRY & operator[] (unsigned int idx)
const ENTRY & get2 (unsigned int idx)
 Return a read-only copy of the element at idx; ONLY WORKS WHEN ELEMENT IS ALREADY IN THE CACHE-- WILL SEGFAULT IF ELEMENT NOT ALREADY PRESENT.
ENTRY & set (unsigned int idx)
 Return a writeable copy of the element at idx.
ENTRY & accumulate (unsigned int idx)
 Fetch the ENTRY at idx to be accumulated.
void accumulate (unsigned int idx, const ENTRY &ent)
 Add ent to the element at idx.
void sync (int single=0, bool clear=false)
 Synchronize reads and writes across the entire array.

Protected Attributes

unsigned int nEntries
 Total number of ENTRY's in the whole array.
bool initHandleGiven
CacheGroup_tcache
 Handle to owner of cache.
CProxy_CacheGroup_t cg

Friends

class MSAHandle< thisMSA >
class MSARead< thisMSA >
class MSAWrite< thisMSA >
class MSAAccum< thisMSA >

Detailed Description

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
class MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >

The MSA1D class is a handle to a distributed shared array of items of data type ENTRY.

There are nEntries total numer of ENTRY's, with ENTRIES_PER_PAGE data items per "page". It is implemented as a Chare Array of pages, and a Group representing the local cache.

The requirements for the templates are: ENTRY: User data class stored in the array, with at least:

Definition at line 394 of file msa-distArray.h.


Member Typedef Documentation

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
typedef MSA_CacheGroup<ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE> MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::CacheGroup_t

Definition at line 397 of file msa-distArray.h.

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
typedef CProxy_MSA_CacheGroup<ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE> MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::CProxy_CacheGroup_t

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
typedef CProxy_MSA_PageArray<ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE> MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::CProxy_PageArray_t

Definition at line 399 of file msa-distArray.h.

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
typedef ENTRY MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::T

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
typedef ENTRY_OPS_CLASS MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::OPS

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
typedef MSA1D<ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE> MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::thisMSA

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
typedef MSAHandle<thisMSA> MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::Handle

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
typedef MSARead<thisMSA> MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::Read

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
typedef MSAAccum<thisMSA> MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::Accum

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
typedef MSAWrite<thisMSA> MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::Write


Constructor & Destructor Documentation

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::MSA1D (  )  [inline]

Definition at line 442 of file msa-distArray.h.

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::MSA1D ( unsigned int  nEntries_,
unsigned int  num_wrkrs,
unsigned int  maxBytes = MSA_DEFAULT_MAX_BYTES 
) [inline]

Create a completely new MSA array.

This call creates the corresponding groups, so only call it once per array.

Definition at line 456 of file msa-distArray.h.

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::MSA1D ( CProxy_CacheGroup_t  cg_  )  [inline]

Definition at line 470 of file msa-distArray.h.

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::~MSA1D (  )  [inline]

Definition at line 476 of file msa-distArray.h.


Member Function Documentation

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
const ENTRY* MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::readablePage ( unsigned int  page  )  [inline, protected]

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
const ENTRY* MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::readablePage2 ( unsigned int  page  )  [inline, protected]

Definition at line 428 of file msa-distArray.h.

Referenced by MSA::MSA1D< ElemList< T >, DefaultListEntry< ElemList< T >, true >, MSA_DEFAULT_ENTRIES_PER_PAGE >::get2().

Here is the caller graph for this function:

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
ENTRY* MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::writeablePage ( unsigned int  page,
unsigned int  offset 
) [inline, protected]

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
virtual void MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::pup ( PUP::er p  )  [inline, virtual]

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
void MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::changePE (  )  [inline]

this function is supposed to be called when the thread/object using this array migrates to another PE.

Definition at line 490 of file msa-distArray.h.

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
unsigned int MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::length ( void   )  const [inline]

Get the total length of the array, across all processors.

Definition at line 499 of file msa-distArray.h.

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
const CProxy_CacheGroup_t& MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::getCacheGroup (  )  const [inline]

Definition at line 501 of file msa-distArray.h.

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
unsigned int MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::getNumEntriesPerPage (  )  const [inline]

Definition at line 505 of file msa-distArray.h.

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
unsigned int MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::getPageIndex ( unsigned int  idx  )  [inline]

Return the page this entry is stored at.

Definition at line 508 of file msa-distArray.h.

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
unsigned int MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::getOffsetWithinPage ( unsigned int  idx  )  [inline]

Return the offset, in entries, that this entry is stored at within a page.

Definition at line 514 of file msa-distArray.h.

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
void MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::enroll ( int  num_workers  )  [inline]

Definition at line 527 of file msa-distArray.h.

Referenced by CreateAdaptAdjacencies().

Here is the caller graph for this function:

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
ENTRY& MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::getPageBottom ( unsigned int  idx,
MSA_Page_Fault_t  accessMode 
) [inline]

Definition at line 540 of file msa-distArray.h.

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
void MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::FreeMem (  )  [inline]

Definition at line 554 of file msa-distArray.h.

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
void MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::Prefetch ( unsigned int  start,
unsigned int  end 
) [inline]

Non-blocking prefetch of entries from start to end, inclusive.

Prefetch'd pages are locked into the cache, so you must call unlock afterwards.

Reimplemented in MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >.

Definition at line 562 of file msa-distArray.h.

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
int MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::WaitAll (  )  [inline]

Block until all prefetched pages arrive.

Definition at line 570 of file msa-distArray.h.

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
void MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::Unlock (  )  [inline]

Unlock all locked pages.

Definition at line 573 of file msa-distArray.h.

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
void MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::Unlock ( unsigned int  start,
unsigned int  end 
) [inline]

start and end are element indexes.

Unlocks completely spanned pages given a range of elements index'd from "start" to "end", inclusive. If start/end does not span a page completely, i.e. start/end is in the middle of a page, the entire page is still unlocked--in particular, this means you should not have several adjacent ranges locked.

Definition at line 581 of file msa-distArray.h.

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
Write MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::getInitialWrite (  )  [inline]

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
Accum MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::getInitialAccum (  )  [inline]

Reimplemented in MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >.

Definition at line 597 of file msa-distArray.h.

Referenced by CreateAdaptAdjacencies().

Here is the caller graph for this function:

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
const ENTRY& MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::get ( unsigned int  idx  )  [inline, protected]

Return a read-only copy of the element at idx.

May block if the element is not already in the cache.

Definition at line 611 of file msa-distArray.h.

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
const ENTRY& MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::operator[] ( unsigned int  idx  )  [inline, protected]

Definition at line 618 of file msa-distArray.h.

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
const ENTRY& MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::get2 ( unsigned int  idx  )  [inline, protected]

Return a read-only copy of the element at idx; ONLY WORKS WHEN ELEMENT IS ALREADY IN THE CACHE-- WILL SEGFAULT IF ELEMENT NOT ALREADY PRESENT.

Never blocks; may crash if element not already present.

Definition at line 627 of file msa-distArray.h.

Referenced by MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::get2().

Here is the caller graph for this function:

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
ENTRY& MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::set ( unsigned int  idx  )  [inline, protected]

Return a writeable copy of the element at idx.

Never blocks; will create a new blank element if none exists locally. UNDEFINED if two threads set the same element.

Definition at line 637 of file msa-distArray.h.

Referenced by MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::set().

Here is the caller graph for this function:

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
ENTRY& MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::accumulate ( unsigned int  idx  )  [inline, protected]

Fetch the ENTRY at idx to be accumulated.

You must perform the accumulation on the return value before calling "sync". Never blocks.

Definition at line 649 of file msa-distArray.h.

Referenced by MSA::MSA1D< ElemList< T >, DefaultListEntry< ElemList< T >, true >, MSA_DEFAULT_ENTRIES_PER_PAGE >::accumulate().

Here is the caller graph for this function:

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
void MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::accumulate ( unsigned int  idx,
const ENTRY &  ent 
) [inline, protected]

Add ent to the element at idx.

Never blocks. Merges together accumulates from different threads.

Definition at line 659 of file msa-distArray.h.

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
void MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::sync ( int  single = 0,
bool  clear = false 
) [inline, protected]

Synchronize reads and writes across the entire array.

Definition at line 665 of file msa-distArray.h.


Friends And Related Function Documentation

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
friend class MSAHandle< thisMSA > [friend]

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
friend class MSARead< thisMSA > [friend]

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
friend class MSAWrite< thisMSA > [friend]

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
friend class MSAAccum< thisMSA > [friend]


Field Documentation

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
unsigned int MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::nEntries [protected]

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
bool MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::initHandleGiven [protected]

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
CacheGroup_t* MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::cache [protected]

Handle to owner of cache.

Definition at line 419 of file msa-distArray.h.

Referenced by MSA::MSA1D< ElemList< T >, DefaultListEntry< ElemList< T >, true >, MSA_DEFAULT_ENTRIES_PER_PAGE >::accumulate(), MSA::MSA1D< ElemList< T >, DefaultListEntry< ElemList< T >, true >, MSA_DEFAULT_ENTRIES_PER_PAGE >::changePE(), MSA::MSA1D< ElemList< T >, DefaultListEntry< ElemList< T >, true >, MSA_DEFAULT_ENTRIES_PER_PAGE >::enroll(), MSA::MSA1D< ElemList< T >, DefaultListEntry< ElemList< T >, true >, MSA_DEFAULT_ENTRIES_PER_PAGE >::FreeMem(), MSA::MSA1D< ElemList< T >, DefaultListEntry< ElemList< T >, true >, MSA_DEFAULT_ENTRIES_PER_PAGE >::MSA1D(), MSA::MSA1D< ElemList< T >, DefaultListEntry< ElemList< T >, true >, MSA_DEFAULT_ENTRIES_PER_PAGE >::Prefetch(), MSA::MSA1D< ElemList< T >, DefaultListEntry< ElemList< T >, true >, MSA_DEFAULT_ENTRIES_PER_PAGE >::pup(), MSA::MSA1D< ElemList< T >, DefaultListEntry< ElemList< T >, true >, MSA_DEFAULT_ENTRIES_PER_PAGE >::readablePage(), MSA::MSA1D< ElemList< T >, DefaultListEntry< ElemList< T >, true >, MSA_DEFAULT_ENTRIES_PER_PAGE >::readablePage2(), MSA::MSA1D< ElemList< T >, DefaultListEntry< ElemList< T >, true >, MSA_DEFAULT_ENTRIES_PER_PAGE >::sync(), MSA::MSA1D< ElemList< T >, DefaultListEntry< ElemList< T >, true >, MSA_DEFAULT_ENTRIES_PER_PAGE >::Unlock(), MSA::MSA1D< ElemList< T >, DefaultListEntry< ElemList< T >, true >, MSA_DEFAULT_ENTRIES_PER_PAGE >::WaitAll(), MSA::MSA1D< ElemList< T >, DefaultListEntry< ElemList< T >, true >, MSA_DEFAULT_ENTRIES_PER_PAGE >::writeablePage(), and MSA::MSA1D< ElemList< T >, DefaultListEntry< ElemList< T >, true >, MSA_DEFAULT_ENTRIES_PER_PAGE >::~MSA1D().

template<class ENTRY, class ENTRY_OPS_CLASS, unsigned int ENTRIES_PER_PAGE = MSA_DEFAULT_ENTRIES_PER_PAGE>
CProxy_CacheGroup_t MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::cg [protected]


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

Generated on Mon Sep 21 08:33:55 2020 for Charm++ by  doxygen 1.5.5