GlobalMemorySlot Class Reference

HiCR: HiCR::backend::lpf::GlobalMemorySlot Class Reference
HiCR
HiCR::backend::lpf::GlobalMemorySlot Class Referencefinal

#include <globalMemorySlot.hpp>

Inheritance diagram for HiCR::backend::lpf::GlobalMemorySlot:
HiCR::GlobalMemorySlot

Public Member Functions

 GlobalMemorySlot (lpf_pid_t rank, lpf_memslot_t lpfMemSlot, lpf_memslot_t lpfSwapSlot, const HiCR::GlobalMemorySlot::tag_t globalTag=0, const HiCR::GlobalMemorySlot::globalKey_t globalKey=0, std::shared_ptr< HiCR::LocalMemorySlot > sourceLocalMemorySlot=nullptr)
 
 ~GlobalMemorySlot () override=default
 
const lpf_pid_t getRank ()
 
lpf_memslot_t getLPFSlot () const
 
lpf_memslot_t getLPFSwapSlot () const
 
- Public Member Functions inherited from HiCR::GlobalMemorySlot
 GlobalMemorySlot (const tag_t globalTag=0, const globalKey_t globalKey=0, std::shared_ptr< HiCR::LocalMemorySlot > sourceLocalMemorySlot=nullptr)
 
__INLINE__ tag_t getGlobalTag () const noexcept
 
__INLINE__ globalKey_t getGlobalKey () const noexcept
 
__INLINE__ std::shared_ptr< HiCR::LocalMemorySlotgetSourceLocalMemorySlot () noexcept
 

Additional Inherited Members

- Public Types inherited from HiCR::GlobalMemorySlot
using globalKey_t = uint64_t
 
using tag_t = uint64_t
 

Detailed Description

This class is the definition for a Memory Slot resource for the LPF backend

Constructor & Destructor Documentation

◆ GlobalMemorySlot()

HiCR::backend::lpf::GlobalMemorySlot::GlobalMemorySlot ( lpf_pid_t  rank,
lpf_memslot_t  lpfMemSlot,
lpf_memslot_t  lpfSwapSlot,
const HiCR::GlobalMemorySlot::tag_t  globalTag = 0,
const HiCR::GlobalMemorySlot::globalKey_t  globalKey = 0,
std::shared_ptr< HiCR::LocalMemorySlot sourceLocalMemorySlot = nullptr 
)
inline

Constructor for a MemorySlot class for the LPF backend

Parameters
[in]rankRank
[in]lpfMemSlotLPF slot this HiCR slot is associated with
[in]lpfSwapSlotLPF swap slot for global acquire/release calls this HiCR slot is associated with
[in]globalTagThe global tag associated to this global memory slot (for exchange purposes)
[in]globalKeyThe global key associated to this global memory slot (for exchange purposes
[in]sourceLocalMemorySlotThe local memory slot (if applicable) from whence this global memory slot is created

◆ ~GlobalMemorySlot()

HiCR::backend::lpf::GlobalMemorySlot::~GlobalMemorySlot ( )
overridevirtualdefault

Default destructor

Reimplemented from HiCR::GlobalMemorySlot.

Member Function Documentation

◆ getLPFSlot()

lpf_memslot_t HiCR::backend::lpf::GlobalMemorySlot::getLPFSlot ( ) const
inline

Get LPF slot associated with this HiCR slot

Returns
LPF slot

◆ getLPFSwapSlot()

lpf_memslot_t HiCR::backend::lpf::GlobalMemorySlot::getLPFSwapSlot ( ) const
inline

Get LPF swap slot associated with this HiCR slot. This slot is only used for acquire/release operations on the HiCR slot.

Returns
LPF slot

◆ getRank()

const lpf_pid_t HiCR::backend::lpf::GlobalMemorySlot::getRank ( )
inline

Returns the rank to which this memory slot belongs

Returns
The rank to which this memory slot belongs

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