Hermes  0.9.5-beta
Hierarchical Distributed I/O Buffering System
hermes::Random Class Reference

#include <random.h>

Inheritance diagram for hermes::Random:
Collaboration diagram for hermes::Random:

Public Member Functions

Status Placement (const std::vector< size_t > &blob_sizes, const std::vector< u64 > &node_state, const std::vector< TargetID > &targets, const api::Context &ctx, std::vector< PlacementSchema > &output)
 
- Public Member Functions inherited from hermes::DPE
 DPE (PlacementPolicy policy)
 

Private Member Functions

void GetOrderedCapacities (const std::vector< u64 > &node_state, const std::vector< TargetID > &targets, std::multimap< u64, TargetID > &ordered_cap)
 
Status AddSchema (std::multimap< u64, TargetID > &ordered_cap, size_t blob_size, PlacementSchema &schema)
 

Additional Inherited Members

- Public Attributes inherited from hermes::DPE
std::vector< f32bandwidths
 
- Protected Member Functions inherited from hermes::DPE
std::vector< int > GetValidSplitChoices (size_t blob_size)
 
bool SplitBlob (size_t blob_size)
 
void GetSplitSizes (size_t blob_size, std::vector< size_t > &output)
 
- Protected Attributes inherited from hermes::DPE
PlacementPolicy policy_
 

Detailed Description

A class to represent data placement engine that places data randomly.

Member Function Documentation

◆ Placement()

Status hermes::Random::Placement ( const std::vector< size_t > &  blob_sizes,
const std::vector< u64 > &  node_state,
const std::vector< TargetID > &  targets,
const api::Context ctx,
std::vector< PlacementSchema > &  output 
)
virtual

set placement schema given BLOB sizes, node states, targets, and context.

Implements hermes::DPE.

Here is the call graph for this function:

◆ GetOrderedCapacities()

void hermes::Random::GetOrderedCapacities ( const std::vector< u64 > &  node_state,
const std::vector< TargetID > &  targets,
std::multimap< u64, TargetID > &  ordered_cap 
)
private

get the capacities of each node_state and targets and store them into ordered_cap.

Here is the caller graph for this function:

◆ AddSchema()

Status hermes::Random::AddSchema ( std::multimap< u64, TargetID > &  ordered_cap,
size_t  blob_size,
PlacementSchema schema 
)
private

add placement schema

Here is the call graph for this function:
Here is the caller graph for this function:

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