.TH "sc::ARMCIMemoryGrp" 3 "Sun Oct 4 2020" "Version 2.3.1" "MPQC" \" -*- nroff -*- .ad l .nh .SH NAME sc::ARMCIMemoryGrp \- The \fBARMCIMemoryGrp\fP concrete class provides an implementation of \fBMsgMemoryGrp\fP\&. .SH SYNOPSIS .br .PP .PP \fC#include \fP .PP Inherits \fBsc::RDMAMemoryGrp\fP\&. .SS "Public Member Functions" .in +1c .ti -1c .RI "\fBARMCIMemoryGrp\fP (const \fBRef\fP< \fBMessageGrp\fP > &msg)" .br .ti -1c .RI "\fBARMCIMemoryGrp\fP (const \fBRef\fP< \fBKeyVal\fP > &)" .br .ti -1c .RI "void \fBset_localsize\fP (size_t)" .br .RI "Set the size of locally held memory\&. " .ti -1c .RI "void \fBretrieve_data\fP (void *, int node, int \fBoffset\fP, int \fBsize\fP, int lock)" .br .ti -1c .RI "void \fBreplace_data\fP (void *, int node, int \fBoffset\fP, int \fBsize\fP, int unlock)" .br .ti -1c .RI "void \fBsum_data\fP (double *data, int node, int doffset, int dsize)" .br .ti -1c .RI "void \fBsync\fP ()" .br .RI "Synchronizes all the nodes\&. " .ti -1c .RI "void \fBdeactivate\fP ()" .br .RI "Deactivate is called after the memory has been used\&. " .ti -1c .RI "void * \fBmalloc_local\fP (size_t nbyte)" .br .RI "Allocate data that will be accessed locally only\&. " .ti -1c .RI "void \fBfree_local\fP (void *data)" .br .RI "Free data that was allocated with malloc_local_double\&. " .ti -1c .RI "void \fBprint\fP (std::ostream &o=\fBExEnv::out0\fP()) const" .br .RI "Prints out information about the object\&. " .in -1c .SS "Additional Inherited Members" .SH "Detailed Description" .PP The \fBARMCIMemoryGrp\fP concrete class provides an implementation of \fBMsgMemoryGrp\fP\&. It uses the ARMCI interface\&. .SH "Member Function Documentation" .PP .SS "void* sc::ARMCIMemoryGrp::malloc_local (size_t nbyte)\fC [virtual]\fP" .PP Allocate data that will be accessed locally only\&. Using this for data that will be used for global operation can improve efficiency\&. Data allocated in this way must be freed with free_local_double\&. .br .PP Reimplemented from \fBsc::MemoryGrp\fP\&. .SS "void sc::ARMCIMemoryGrp::set_localsize (size_t)\fC [virtual]\fP" .PP Set the size of locally held memory\&. When memory is accessed using a global offset counting starts at node 0 and proceeds up to node \fBn()\fP - 1\&. .PP Implements \fBsc::MemoryGrp\fP\&. .SS "void sc::ARMCIMemoryGrp::sync ()\fC [virtual]\fP" .PP Synchronizes all the nodes\&. This is useful after remote memory writes to be certain that all of the writes have completed and the data can be accessed locally, for example\&. .PP Implements \fBsc::MemoryGrp\fP\&. .SH "Author" .PP Generated automatically by Doxygen for MPQC from the source code\&.