wrench::ServerlessPlanSelectionPolicy

class ServerlessPlanSelectionPolicy

An abstract class to implement a serverless plan evaluation policy.

Subclassed by wrench::EvictionAverseServerlessPlanSelectionPolicy, wrench::RandomServerlessPlanSelectionPolicy

Public Functions

virtual std::shared_ptr<ServerlessComputeNode> pickBestInvocationPlan(const std::map<std::shared_ptr<ServerlessComputeNode>, std::shared_ptr<ServerlessSchedulingDecisions>> &plans) = 0

Select the node that has the best invocation plan.

Parameters:

plans – a map of plans

Returns:

a compute node

virtual std::shared_ptr<ServerlessComputeNode> pickBestLayerCopyPlan(const std::map<std::shared_ptr<ServerlessComputeNode>, std::shared_ptr<ServerlessSchedulingDecisions>> &plans) = 0

Select the node that has the best layer-copy plan.

Parameters:

plans – a map of plans

Returns:

a compute node

virtual std::shared_ptr<ServerlessComputeNode> pickBestLayerLoadPlan(const std::map<std::shared_ptr<ServerlessComputeNode>, std::shared_ptr<ServerlessSchedulingDecisions>> &plans) = 0

Select the node that has the best layer-load plan.

Parameters:

plans – a map of plans

Returns:

a compute node