wrench::GreedySchedulingState

class GreedySchedulingState

Public Functions

explicit GreedySchedulingState(const ServerlessStateOfTheSystem *state, const std::vector<std::shared_ptr<Invocation>> &schedulable_invocations)

Constructor.

Parameters:
  • state – current system state

  • schedulable_invocations – the schedulable invocations

Public Members

std::vector<std::shared_ptr<ServerlessComputeNode>> compute_nodes

The compute nodes.

std::map<std::shared_ptr<ServerlessComputeNode>, unsigned int> cores_available

Map of core availability.

std::map<std::shared_ptr<ServerlessComputeNode>, std::set<std::shared_ptr<Container>>> idle_containers

Map of idle containers.

std::map<std::shared_ptr<ServerlessComputeNode>, std::unordered_set<std::shared_ptr<Image>>> images_in_ram

Map of in-RAM images.

std::map<std::shared_ptr<ServerlessComputeNode>, std::unordered_set<std::shared_ptr<Image>>> images_on_disk

Map of on-disk images.

std::map<std::shared_ptr<ServerlessComputeNode>, std::unordered_set<std::shared_ptr<Image>>> images_on_their_way_to_disk

Map of soon-to-be-on-disk images.

std::map<std::shared_ptr<ServerlessComputeNode>, std::unordered_set<std::shared_ptr<Image>>> images_on_their_way_to_ram

Map of soon-to-be-in-RAM images.