X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/8bcc1dbe28f658ea786ba234a679601edd30758a..6270ece7967b322385bbff766ee5f882ba1ef2a2:/src/surf/host_ptask_L07.hpp diff --git a/src/surf/host_ptask_L07.hpp b/src/surf/host_ptask_L07.hpp index 51dd683548..86acc7d266 100644 --- a/src/surf/host_ptask_L07.hpp +++ b/src/surf/host_ptask_L07.hpp @@ -24,7 +24,6 @@ class XBT_PRIVATE CpuL07; class XBT_PRIVATE LinkL07; class XBT_PRIVATE L07Action; - /********* * Tools * *********/ @@ -39,7 +38,7 @@ public: double shareResources(double now); void updateActionsState(double now, double delta); - Host *createHost(const char *name); + Host *createHost(const char *name,RoutingEdge *netElm, Cpu *cpu); Action *executeParallelTask(int host_nb, sg_host_t *host_list, double *flops_amount, @@ -52,7 +51,7 @@ public: class CpuL07Model : public CpuModel { public: - CpuL07Model() : CpuModel() {}; + CpuL07Model(HostL07Model *hmodel) : CpuModel() {p_hostModel = hmodel;}; ~CpuL07Model() {surf_cpu_model_pm = NULL;}; Cpu *createCpu(const char *name, xbt_dynar_t powerPeak, int pstate, double power_scale, @@ -67,7 +66,7 @@ public: class NetworkL07Model : public NetworkModel { public: - NetworkL07Model() : NetworkModel() {}; + NetworkL07Model(HostL07Model *hmodel) : NetworkModel() {p_hostModel = hmodel;}; ~NetworkL07Model() {surf_network_model = NULL;}; Link* createLink(const char *name, double bw_initial, @@ -94,17 +93,11 @@ public: class HostL07 : public Host { public: HostL07(HostModel *model, const char* name, xbt_dict_t props, RoutingEdge *netElm, Cpu *cpu); - //bool isUsed(); bool isUsed() {DIE_IMPOSSIBLE;}; void updateState(tmgr_trace_event_t /*event_type*/, double /*value*/, double /*date*/) {DIE_IMPOSSIBLE;}; - Action *execute(double size); - Action *sleep(double duration); + Action *execute(double size) {return p_cpu->execute(size);}; + Action *sleep(double duration) {return p_cpu->sleep(duration);}; e_surf_resource_state_t getState(); - double getPowerPeakAt(int pstate_index); - int getNbPstates(); - void setPstate(int pstate_index); - int getPstate(); - double getConsumedEnergy(); }; class CpuL07 : public Cpu { @@ -116,10 +109,9 @@ public: double power_scale, double power_initial, tmgr_trace_t power_trace, int core, e_surf_resource_state_t state_initial, tmgr_trace_t state_trace); bool isUsed(); - //bool isUsed() {DIE_IMPOSSIBLE;}; void updateState(tmgr_trace_event_t event_type, double value, double date); - CpuAction *execute(double /*size*/) {DIE_IMPOSSIBLE;}; - CpuAction *sleep(double /*duration*/) {DIE_IMPOSSIBLE;}; + Action *execute(double size); + Action *sleep(double duration); double getCurrentPowerPeak() {THROW_UNIMPLEMENTED;}; double getPowerPeakAt(int /*pstate_index*/) {THROW_UNIMPLEMENTED;}; @@ -146,7 +138,7 @@ public: void updateState(tmgr_trace_event_t event_type, double value, double date); double getBandwidth(); double getLatency(); - bool isShared(); + int sharingPolicy(); void updateBandwidth(double value, double date=surf_get_clock()); void updateLatency(double value, double date=surf_get_clock()); @@ -160,8 +152,8 @@ public: * Action * **********/ class L07Action : public HostAction { - friend Action *HostL07::execute(double size); - friend Action *HostL07::sleep(double duration); + friend Action *CpuL07::execute(double size); + friend Action *CpuL07::sleep(double duration); friend Action *HostL07Model::executeParallelTask(int host_nb, sg_host_t*host_list, double *flops_amount,