SimGrid
3.13
Versatile Simulation of Distributed Systems
|
SURF cpu model interface class. More...
#include <cpu_interface.hpp>
Public Member Functions | |
CpuModel () | |
virtual Cpu * | createCpu (simgrid::s4u::Host *host, xbt_dynar_t speedPerPstate, int core)=0 |
Create a Cpu. More... | |
void | updateActionsStateLazy (double now, double delta) |
void | updateActionsStateFull (double now, double delta) |
bool | next_occuring_event_isIdempotent () |
Returns whether this model have an idempotent shareResource() More... | |
![]() | |
Model () | |
virtual | ~Model () |
virtual ActionList * | getReadyActionSet () |
Get the set of actions in ready state. More... | |
virtual ActionList * | getRunningActionSet () |
Get the set of actions in running state. More... | |
virtual ActionList * | getFailedActionSet () |
Get the set of actions in failed state. More... | |
virtual ActionList * | getDoneActionSet () |
Get the set of actions in done state. More... | |
virtual ActionLmmListPtr | getModifiedSet () |
Get the set of modified actions. More... | |
lmm_system_t | getMaxminSystem () |
Get the maxmin system of the current Model. More... | |
e_UM_t | getUpdateMechanism () |
Get the update mechanism of the current Model. More... | |
xbt_heap_t | getActionHeap () |
Get Action heap. More... | |
virtual double | next_occuring_event (double now) |
Share the resources between the actions. More... | |
virtual double | next_occuring_event_lazy (double now) |
virtual double | next_occuring_event_full (double now) |
double | shareResourcesMaxMin (ActionList *running_actions, lmm_system_t sys, void(*solve)(lmm_system_t)) |
virtual void | updateActionsState (double now, double delta) |
Update action to the current time. More... | |
Additional Inherited Members | |
![]() | |
ActionLmmListPtr | modifiedSet_ |
lmm_system_t | maxminSystem_ = nullptr |
e_UM_t | updateMechanism_ = UM_UNDEFINED |
int | selectiveUpdate_ |
xbt_heap_t | actionHeap_ |
SURF cpu model interface class.
A model is an object which handle the interactions between its Resources and its Actions
|
inline |
|
pure virtual |
Create a Cpu.
host | The host that will have this CPU |
speedPerPstate | Processor speed (in Flops) of each pstate. This ignores any potential external load coming from a trace. |
core | The number of core of this Cpu |
Implemented in simgrid::surf::CpuTiModel, simgrid::surf::CpuL07Model, and simgrid::surf::CpuCas01Model.
|
virtual |
Reimplemented from simgrid::surf::Model.
|
virtual |
Reimplemented from simgrid::surf::Model.
|
inlinevirtual |
Returns whether this model have an idempotent shareResource()
The only model that is not is NS3: computing the next timestamp moves the model up to that point, so we need to call it only when the next timestamp of other sources is computed.
Implements simgrid::surf::Model.