sc::ARMCIMemoryGrp(3)

πŸ“¦
version 2.3.1 Β· 5 versions
, in ubuntu jammy

okay bestie, welcome to the MPQC manual page for sc::ARMCIMemoryGrp(3) β€” this one is all about a memory group class that’s giving very specific ARMCI energy πŸ’…βœ¨

🌸 NAME 🌸

sc::ARMCIMemoryGrp β€” the concrete class that provides an implementation of MsgMemoryGrp. No cap, that’s the whole name-and-role situation.

πŸ¦‹ SYNOPSIS πŸ¦‹

#include <memarmci.h>

Inherits sc::RDMAMemoryGrp.

✨ Public Member Functions ✨

  • ARMCIMemoryGrp (const Ref< MessageGrp > &msg) β€” constructor, bestie.
  • ARMCIMemoryGrp (const Ref< KeyVal > &) β€” the other constructor.
  • void set_localsize (size_t) β€” Set the size of locally held memory.
  • void retrieve_data (void *, int node, int offset, int size, int lock) β€” signature only on this page, but all the parameters are right there.
  • void replace_data (void *, int node, int offset, int size, int unlock) β€” also signature-only here.
  • void sum_data (double *data, int node, int doffset, int dsize) β€” yep, signature only too.
  • void sync () β€” Synchronizes all the nodes.
  • void deactivate () β€” Deactivate is called after the memory has been used.
  • void * malloc_local (size_t nbyte) β€” Allocate data that will be accessed locally only.
  • void free_local (void *data) β€” Free data that was allocated with malloc_local_double.
  • void print (std::ostream &o=ExEnv::out0()) const β€” Prints out information about the object.

🫢 Additional Inherited Members 🫢

This page also has an Additional Inherited Members heading, but it doesn’t list anything extra under it here. The vibes are mysterious, the heading is iconic, we move on πŸ’œ

🧚 DETAILED DESCRIPTION 🧚

The ARMCIMemoryGrp concrete class provides an implementation of MsgMemoryGrp.

It uses the ARMCI interface. That’s the headline, bestie β€” very demure, very ARMCI.

πŸ“š MEMBER FUNCTION DOCUMENTATION πŸ“š

πŸ’– void* sc::ARMCIMemoryGrp::malloc_local (size_t nbyte) [virtual]

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.

Reimplemented from sc::MemoryGrp.

yes, it really says free_local_double there β€” keep that exact name in mind, bestie 🫢

πŸ’– void sc::ARMCIMemoryGrp::set_localsize (size_t) [virtual]

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 n() - 1.

Implements sc::MemoryGrp.

πŸ’– void sc::ARMCIMemoryGrp::sync () [virtual]

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.

Implements sc::MemoryGrp.

πŸ‘‘ AUTHOR πŸ‘‘

Generated automatically by Doxygen for MPQC from the source code. Slay, automated documentation pipeline πŸ’…


πŸŽ€ okay that’s the page! Big kiss from MPQC version 2.3.1, dated Sun Oct 4 2020, living at sc::ARMCIMemoryGrp(3) in the manual. Byeeee πŸ’œβœ¨
πŸ“¦ where this page comes from