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 ()
 
CpucreateCpu (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 ActionListgetReadyActionSet ()
 Get the set of actions in ready state. More...
 
virtual ActionListgetRunningActionSet ()
 Get the set of actions in running state. More...
 
virtual ActionListgetFailedActionSet ()
 Get the set of actions in failed state. More...
 
virtual ActionListgetDoneActionSet ()
 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

ActionListrunningActionSetThatDoesNotNeedBeingChecked_
 
CpuTiListmodifiedCpu_
 
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: