wrench::ServerlessNodeScalingPolicy

class ServerlessNodeScalingPolicy : public wrench::ServerlessSchedulingPolicy

An abstract class to implement a serverless scheduling node activation policy.

Subclassed by wrench::ActivateAllNodePolicy, wrench::ReactiveScaleUpNodeActivationPolicy, wrench::ReactiveScaleUpScaleDownNodeActivationPolicy

Public Functions

virtual std::pair<unsigned long, std::set<std::shared_ptr<ServerlessComputeNode>>> makeNodeScalingPlan(const std::shared_ptr<ServerlessSchedulingState> &scheduling_state) = 0

Decide on a node scaling plan, which consists of a number of compute nodes to activate (possibly zero), and a number of compute nodes to de-activate (possibly none).

Parameters:

scheduling_state – the scheduling state

Returns:

a pair of: 1) a number of compute nodes to activate; and 2) a set of compute nodes to de-activate.