- Cpu(CpuModelPtr model, string name, xbt_dict_t properties) : Resource(model, name, properties) {};
- CpuActionPtr execute(double size);
- CpuActionPtr sleep(double duration);
- e_surf_resource_state_t getState();
- int getCore();
- double getSpeed(double load);
- double getAvailableSpeed();
- void addTraces(void);
+ Cpu(){};
+ Cpu(CpuModelPtr model, const char* name, xbt_dict_t properties) : Resource(model, name, properties) {};
+ virtual ActionPtr execute(double size)=0;
+ virtual ActionPtr sleep(double duration)=0;
+ virtual int getCore();
+ virtual double getSpeed(double load);
+ virtual double getAvailableSpeed();
+
+ virtual double getCurrentPowerPeak()=0;
+ virtual double getPowerPeakAt(int pstate_index)=0;
+ virtual int getNbPstates()=0;
+ virtual void setPowerPeakAt(int pstate_index)=0;
+ virtual double getConsumedEnergy()=0;