e_surf_resource_state_t state_initial,
tmgr_trace_t state_trace,
xbt_dict_t cpu_properties);
+ CpuPtr createResource(const char *name, xbt_dynar_t powerPeak,
+ int pstate, double power_scale,
+ tmgr_trace_t power_trace, int core,
+ e_surf_resource_state_t state_initial,
+ tmgr_trace_t state_trace,
+ xbt_dict_t cpu_properties);
void addTraces() {DIE_IMPOSSIBLE;};
WorkstationL07ModelPtr p_workstationModel;
};
class CpuL07 : public Cpu {
-public:
- s_surf_metric_t p_power;
+ friend void WorkstationL07Model::addTraces();
tmgr_trace_event_t p_stateEvent;
-
+ tmgr_trace_event_t p_powerEvent;
public:
CpuL07(CpuL07ModelPtr model, const char* name, xbt_dict_t properties,
double power_scale,
bool isUsed();
//bool isUsed() {DIE_IMPOSSIBLE;};
void updateState(tmgr_trace_event_t event_type, double value, double date);
- double getSpeed(double load);
- double getAvailableSpeed();
CpuActionPtr execute(double /*size*/) {DIE_IMPOSSIBLE;};
CpuActionPtr sleep(double /*duration*/) {DIE_IMPOSSIBLE;};
int getNbPstates() {THROW_UNIMPLEMENTED;};
void setPowerPeakAt(int /*pstate_index*/) {THROW_UNIMPLEMENTED;};
double getConsumedEnergy() {THROW_UNIMPLEMENTED;};
-
- double m_powerCurrent;
};
class LinkL07 : public NetworkLink {
double getBandwidth();
double getLatency();
bool isShared();
+ void updateBandwidth(double value, double date=surf_get_clock());
+ void updateLatency(double value, double date=surf_get_clock());
double m_latCurrent;
tmgr_trace_event_t p_latEvent;