SMASTA+ 1.1
A distributed system contains:
- a pool of computing nodes available within the infrastructure which can be activated in order to process the tasks;
- some resource nodes since each task requires resources which are distributed across different resource nodes.
We consider :
- situated task allocation problems with concurrent jobs which consist of finding an optimal allocation.
- provisioning problems which consist of finding a minimal configuration.
We consider the following operations:
- a deal between contractors (i.e. computing nodes involved) which exchanges some lists of tasks within a stap instance;
- a task consumption;
- an activation of a computing node modifies the set of active computing nodes and so, the time-extended allocation is also updated since the recently activated node is associated with an empty bundle;
- a deactivation of a computing node modifies the set of active computing nodes and so the time-extended allocation. A node must be associated with an empty bundle in order to be deactivated.
A time-extended allocation is an assignment of the tasks to some computing nodes. Its delay is the time since the initial boot time of the distributed system.
A configuration (at time t) represents a specific task allocation for a non-empty set of computing nodes.
A load-balancer returns an allocation with the aim of making it optimal with respect to a social rule
A scaler returns a configuration with the aim of making it minimal according to the QoS constraints.
We propose a first scaler based on PyDCOP.