SimGrid  3.13
Versatile Simulation of Distributed Systems
simgrid::surf::CpuTiModel Class Reference

#include <cpu_ti.hpp>

Inheritance diagram for simgrid::surf::CpuTiModel:
simgrid::surf::CpuModel simgrid::surf::Model

Public Member Functions

 CpuTiModel ()
 
 ~CpuTiModel ()
 
Cpu * createCpu (simgrid::s4u::Host *host, xbt_dynar_t speedPerPstate, int core) override
 Create a Cpu. More...
 
double next_occuring_event (double now) override
 Share the resources between the actions. More...
 
void updateActionsState (double now, double delta) override
 Update action to the current time. More...
 
- Public Member Functions inherited from simgrid::surf::CpuModel
 CpuModel ()
 
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...
 
- Public Member Functions inherited from simgrid::surf::Model
 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_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))
 

Public Attributes

ActionList * runningActionSetThatDoesNotNeedBeingChecked_
 
CpuTiList * modifiedCpu_
 
xbt_heap_t tiActionHeap_
 

Protected Member Functions

void NotifyResourceTurnedOn (simgrid::surf::Resource *)
 
void NotifyResourceTurnedOff (simgrid::surf::Resource *)
 
void NotifyActionCancel (Action *)
 
void NotifyActionResume (Action *)
 
void NotifyActionSuspend (Action *)
 

Additional Inherited Members

- Protected Attributes inherited from simgrid::surf::Model
ActionLmmListPtr modifiedSet_
 
lmm_system_t maxminSystem_ = nullptr
 
e_UM_t updateMechanism_ = UM_UNDEFINED
 
int selectiveUpdate_
 
xbt_heap_t actionHeap_
 

Constructor & Destructor Documentation

simgrid::surf::CpuTiModel::CpuTiModel ( )
simgrid::surf::CpuTiModel::~CpuTiModel ( )

Member Function Documentation

Cpu * simgrid::surf::CpuTiModel::createCpu ( simgrid::s4u::Host *  host,
xbt_dynar_t  speedPerPstate,
int  core 
)
overridevirtual

Create a Cpu.

Parameters
hostThe host that will have this CPU
speedPerPstateProcessor speed (in Flops) of each pstate. This ignores any potential external load coming from a trace.
coreThe number of core of this Cpu

Implements simgrid::surf::CpuModel.

double simgrid::surf::CpuTiModel::next_occuring_event ( double  now)
overridevirtual

Share the resources between the actions.

Parameters
nowThe current time of the simulation
Returns
The delta of time till the next action will finish

Reimplemented from simgrid::surf::Model.

void simgrid::surf::CpuTiModel::updateActionsState ( double  now,
double  delta 
)
overridevirtual

Update action to the current time.

Parameters
nowThe current time of the simulation
deltaThe delta of time since the last update

Reimplemented from simgrid::surf::Model.

void simgrid::surf::CpuTiModel::NotifyResourceTurnedOn ( simgrid::surf::Resource *  )
inlineprotected
void simgrid::surf::CpuTiModel::NotifyResourceTurnedOff ( simgrid::surf::Resource *  )
inlineprotected
void simgrid::surf::CpuTiModel::NotifyActionCancel ( Action *  )
inlineprotected
void simgrid::surf::CpuTiModel::NotifyActionResume ( Action *  )
inlineprotected
void simgrid::surf::CpuTiModel::NotifyActionSuspend ( Action *  )
inlineprotected

Member Data Documentation

ActionList* simgrid::surf::CpuTiModel::runningActionSetThatDoesNotNeedBeingChecked_
CpuTiList* simgrid::surf::CpuTiModel::modifiedCpu_
xbt_heap_t simgrid::surf::CpuTiModel::tiActionHeap_

The documentation for this class was generated from the following files: