#include <msa-distArray.h>
Public Types | |
typedef CProxy_MSA_CacheGroup < ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE > | CProxy_CacheGroup_t |
typedef MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE > | super |
typedef ENTRY | T |
typedef ENTRY_OPS_CLASS | OPS |
typedef MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE > | thisMSA |
typedef MSAHandle< thisMSA > | Handle |
typedef MSARead< thisMSA > | Read |
typedef MSAAccum< thisMSA > | Accum |
typedef MSAWrite< thisMSA > | Write |
Public Member Functions | |
MSA2D () | |
virtual void | pup (PUP::er &p) |
MSA2D (unsigned int rows_, unsigned int cols_, unsigned int numwrkrs, unsigned int maxBytes=MSA_DEFAULT_MAX_BYTES) | |
MSA2D (unsigned int rows_, unsigned int cols_, CProxy_CacheGroup_t cg_) | |
unsigned int | getIndex (unsigned int row, unsigned int col) |
unsigned int | getPageIndex (unsigned int row, unsigned int col) |
unsigned int | getOffsetWithinPage (unsigned int row, unsigned int col) |
unsigned int | getRows (void) const |
unsigned int | getCols (void) const |
unsigned int | getColumns (void) const |
MSA_Array_Layout_t | getArrayLayout () const |
void | Prefetch (unsigned int start, unsigned int end) |
Non-blocking prefetch of entries from start to end, inclusive. | |
void | UnlockPages (unsigned int start, unsigned int end) |
Write | getInitialWrite () |
Accum | getInitialAccum () |
Protected Member Functions | |
const ENTRY & | get (unsigned int row, unsigned int col) |
const ENTRY & | get2 (unsigned int row, unsigned int col) |
ENTRY & | set (unsigned int row, unsigned int col) |
Protected Attributes | |
unsigned int | rows |
unsigned int | cols |
Friends | |
class | MSAHandle< thisMSA > |
class | MSARead< thisMSA > |
class | MSAWrite< thisMSA > |
class | MSAAccum< thisMSA > |
Definition at line 675 of file msa-distArray.h.
typedef CProxy_MSA_CacheGroup<ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE> MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::CProxy_CacheGroup_t |
Reimplemented from MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >.
Definition at line 678 of file msa-distArray.h.
typedef MSA1D<ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE> MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::super |
Definition at line 679 of file msa-distArray.h.
typedef ENTRY MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::T |
Reimplemented from MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >.
Definition at line 681 of file msa-distArray.h.
typedef ENTRY_OPS_CLASS MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::OPS |
Reimplemented from MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >.
Definition at line 682 of file msa-distArray.h.
typedef MSA2D<ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE> MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::thisMSA |
Reimplemented from MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >.
Definition at line 683 of file msa-distArray.h.
typedef MSAHandle<thisMSA> MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::Handle |
Reimplemented from MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >.
Definition at line 684 of file msa-distArray.h.
typedef MSARead<thisMSA> MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::Read |
Reimplemented from MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >.
Definition at line 685 of file msa-distArray.h.
typedef MSAAccum<thisMSA> MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::Accum |
Reimplemented from MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >.
Definition at line 686 of file msa-distArray.h.
typedef MSAWrite<thisMSA> MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::Write |
Reimplemented from MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >.
Definition at line 687 of file msa-distArray.h.
MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::MSA2D | ( | ) | [inline] |
Definition at line 698 of file msa-distArray.h.
MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::MSA2D | ( | unsigned int | rows_, | |
unsigned int | cols_, | |||
unsigned int | numwrkrs, | |||
unsigned int | maxBytes = MSA_DEFAULT_MAX_BYTES | |||
) | [inline] |
Definition at line 704 of file msa-distArray.h.
References MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::cols, and MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::rows.
MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::MSA2D | ( | unsigned int | rows_, | |
unsigned int | cols_, | |||
CProxy_CacheGroup_t | cg_ | |||
) | [inline] |
Definition at line 711 of file msa-distArray.h.
virtual void MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::pup | ( | PUP::er & | p | ) | [inline, virtual] |
Reimplemented from MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >.
Definition at line 699 of file msa-distArray.h.
References MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::cols, PUP::pup(), and MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::rows.
unsigned int MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::getIndex | ( | unsigned int | row, | |
unsigned int | col | |||
) | [inline] |
Definition at line 716 of file msa-distArray.h.
References MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::cols, index, MSA_ROW_MAJOR, and MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::rows.
Referenced by MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::get(), MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::get2(), MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::getOffsetWithinPage(), MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::getPageIndex(), MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::Prefetch(), MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::set(), and MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::UnlockPages().
unsigned int MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::getPageIndex | ( | unsigned int | row, | |
unsigned int | col | |||
) | [inline] |
Definition at line 729 of file msa-distArray.h.
References MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::getIndex().
unsigned int MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::getOffsetWithinPage | ( | unsigned int | row, | |
unsigned int | col | |||
) | [inline] |
Definition at line 734 of file msa-distArray.h.
References MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::getIndex().
unsigned int MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::getRows | ( | void | ) | const [inline] |
Definition at line 739 of file msa-distArray.h.
References MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::rows.
unsigned int MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::getCols | ( | void | ) | const [inline] |
Definition at line 740 of file msa-distArray.h.
References MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::cols.
unsigned int MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::getColumns | ( | void | ) | const [inline] |
Definition at line 741 of file msa-distArray.h.
References MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::cols.
MSA_Array_Layout_t MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::getArrayLayout | ( | ) | const [inline] |
Definition at line 742 of file msa-distArray.h.
void MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::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 from MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >.
Definition at line 744 of file msa-distArray.h.
References MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::cols, MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::getIndex(), MSA_ROW_MAJOR, and MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::rows.
void MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::UnlockPages | ( | unsigned int | start, | |
unsigned int | end | |||
) | [inline] |
Definition at line 761 of file msa-distArray.h.
References MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::cols, MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::getIndex(), MSA_ROW_MAJOR, and MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::rows.
Write MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::getInitialWrite | ( | ) | [inline] |
Reimplemented from MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >.
Definition at line 776 of file msa-distArray.h.
References MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::initHandleGiven.
Accum MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::getInitialAccum | ( | ) | [inline] |
Reimplemented from MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >.
Definition at line 785 of file msa-distArray.h.
References MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::initHandleGiven.
const ENTRY& MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::get | ( | unsigned int | row, | |
unsigned int | col | |||
) | [inline, protected] |
Definition at line 795 of file msa-distArray.h.
References stats::get(), and MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::getIndex().
const ENTRY& MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::get2 | ( | unsigned int | row, | |
unsigned int | col | |||
) | [inline, protected] |
Definition at line 801 of file msa-distArray.h.
References MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::get2(), and MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::getIndex().
ENTRY& MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::set | ( | unsigned int | row, | |
unsigned int | col | |||
) | [inline, protected] |
Definition at line 807 of file msa-distArray.h.
References MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::getIndex(), and MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >::set().
friend class MSAHandle< thisMSA > [friend] |
Reimplemented from MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >.
Definition at line 688 of file msa-distArray.h.
friend class MSARead< thisMSA > [friend] |
Reimplemented from MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >.
Definition at line 689 of file msa-distArray.h.
friend class MSAWrite< thisMSA > [friend] |
Reimplemented from MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >.
Definition at line 690 of file msa-distArray.h.
friend class MSAAccum< thisMSA > [friend] |
Reimplemented from MSA::MSA1D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE >.
Definition at line 691 of file msa-distArray.h.
unsigned int MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::rows [protected] |
Definition at line 694 of file msa-distArray.h.
Referenced by MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::getIndex(), MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::getRows(), MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::MSA2D(), MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::Prefetch(), MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::pup(), and MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::UnlockPages().
unsigned int MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::cols [protected] |
Definition at line 694 of file msa-distArray.h.
Referenced by MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::getCols(), MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::getColumns(), MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::getIndex(), MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::MSA2D(), MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::Prefetch(), MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::pup(), and MSA::MSA2D< ENTRY, ENTRY_OPS_CLASS, ENTRIES_PER_PAGE, ARRAY_LAYOUT >::UnlockPages().