lbaf.Model.lbsRank.Rank class

A class representing a rank to which objects are assigned.

Methods

def add_migratable_object(self, o: lbsObject.Object, fallback_collection_id: typing.Optional[int] = 7) -> None
Add object to migratable objects.
def add_sentinel_object(self, o: lbsObject.Object) -> None
Add object to sentinel objects.
def add_shared_block(self, block: lbsBlock.Block)
Add rank shared memory block.
def copy(self, rank)
Specialized copy method.
def delete_shared_block(self, block: lbsBlock.Block)
Try to delete shared memory block.
def get_homed_blocks_ratio(self) -> float
Return fraction of memory blocks on rank also homed there.
def get_id(self) -> int
Return rank ID.
def get_load(self) -> float
Return total load on rank.
def get_max_memory_usage(self) -> float
Return maximum memory usage on rank.
def get_max_object_level_memory(self) -> float
Return maximum object-level memory on rank.
def get_metadata(self) -> dict
Return original metadata.
def get_migratable_load(self) -> float
Return migratable load on rank.
def get_migratable_object_ids(self) -> list
Return IDs of migratable objects assigned to rank.
def get_migratable_objects(self) -> set
Return migratable objects assigned to rank.
def get_number_of_homed_blocks(self) -> float
Return number of memory blocks on rank also homed there.
def get_number_of_objects(self) -> int
Return number of objects assigned to rank.
def get_number_of_shared_blocks(self) -> float
Return number of shared memory blocks on rank.
def get_number_of_uprooted_blocks(self) -> float
Return number of uprooted memory blocks on rank.
def get_object_ids(self) -> list
Return IDs of all objects assigned to rank.
def get_objects(self) -> set
Return all objects assigned to rank.
def get_received_volume(self)
Return volume received by objects assigned to rank from other ranks.
def get_sent_volume(self)
Return volume sent by objects assigned to rank to other ranks.
def get_sentinel_load(self) -> float
Return sentinel load on rank.
def get_sentinel_object_ids(self) -> list
Return IDs of sentinel objects assigned to rank.
def get_sentinel_objects(self) -> set
Return sentinel objects assigned to rank.
def get_shared_block_with_id(self, b_id: int) -> lbsBlock.Block
Return shared memory block with given ID when it exists.
def get_shared_ids(self) -> set
Return IDs of shared blocks.
def get_shared_memory(self)
Return total shared memory on rank.
def get_size(self) -> float
Return object size.
def is_migratable(self, o: lbsObject.Object) -> bool
Return whether given object is migratable.
def is_sentinel(self, o: lbsObject.Object) -> bool
Return whether given object is sentinel of rank.
def remove_migratable_object(self, o: lbsObject.Object)
Remove objects from migratable objects.
def set_metadata(self, metadata: dict)
Set rank's metadata.
def set_shared_blocks(self, blocks: set)
Set rank shared memory blocks.
def set_size(self, size)
Set rank working memory, called size.

Special methods

def __init__(self, logger: logging.Logger, r_id: int = -1, mo: set = None, so: set = None)
def __lt__(self, other)
def __repr__(self)