private List<CpuConstant> cpus = new ArrayList<CpuConstant>();
public CpuConstantModel() {
- super("Cpu Constant");
Msg.info("Initialize Cpu Constant Model");
}
/* construct the platform and deploy the application */
Msg.createEnvironment(args[0]);
Msg.deployApplication(args[1]);
- Msg.info("Cpu Loaded: "+Surf.getCpuModel().getName());
+ Msg.info("Cpu Loaded: "+Surf.getCpuModel().getClass().getName());
/* execute the simulation. */
Msg.run();
> [0.000000] [jmsg/INFO] New Cpu(Ginette, 4.8492E7, 1.0)
> [0.000000] [jmsg/INFO] New Cpu(Bourassa, 4.8492E7, 1.0)
> [0.000000] [jmsg/INFO] UpdateActionState of 0 actions
-> [0.000000] [jmsg/INFO] Cpu Loaded: Cpu Constant
+> [0.000000] [jmsg/INFO] Cpu Loaded: surfCpuModel.CpuConstantModel
> [Tremblay:surfCpuModel.Sender:(1) 0.000000] [jmsg/INFO] helloo!
> [Jupiter:surfCpuModel.Receiver:(2) 0.000000] [jmsg/INFO] helloo!
> [0.000000] [jmsg/INFO] Sleep action of duration -1.0 sleeping true
@Override
public void cpuActionStateChangedCallback(CpuAction action, ActionState old, ActionState cur){
- Msg.info("Trace: CpuAction state changed "+action.getModel().getName());
+ Msg.info("Trace: CpuAction state changed");
}
@Override
@Override
public void networkActionStateChangedCallback(NetworkAction action, ActionState old, ActionState cur){
- Msg.info("Trace: NetworkAction state changed "+action.getModel().getName());
+ Msg.info("Trace: NetworkAction state changed");
}
}
> [Tremblay:surfPlugin.Sender:(1) 0.000000] [jmsg/INFO] sender time: 0.0
> [Jupiter:surfPlugin.Receiver:(2) 0.000000] [jmsg/INFO] helloo!
> [Jupiter:surfPlugin.Receiver:(2) 0.000000] [jmsg/INFO] try to get a task
-> [0.019014] [jmsg/INFO] Trace: NetworkAction state changed network
+> [0.019014] [jmsg/INFO] Trace: NetworkAction state changed
> [Jupiter:surfPlugin.Receiver:(2) 0.019014] [jmsg/INFO] Got at time 0.019014486310327584
> [Tremblay:surfPlugin.Sender:(1) 0.019014] [jmsg/INFO] goodbye!
-> [0.019146] [jmsg/INFO] Trace: CpuAction state changed cpu
+> [0.019146] [jmsg/INFO] Trace: CpuAction state changed
> [Jupiter:surfPlugin.Receiver:(2) 0.019146] [jmsg/INFO] goodbye!
> [0.019146] [jmsg/INFO] MSG_main finished; Cleaning up the simulation...
> [0.019146] [jmsg/INFO] Trace: Cpu destructed Fafard
SurfJNI.CpuModel_change_ownership(this, swigCPtr, true);
}
-
- /**
- * CpuModel constructon
- * @param name The name of the cpumodel
- */
- public CpuModel(String name) {
- this(SurfJNI.new_CpuModel(name), true);
+ public CpuModel() {
+ this(SurfJNI.new_CpuModel(), true);
SurfJNI.CpuModel_director_connect(this, swigCPtr, swigCMemOwn, true);
}
}
- /**
- * @return The name of the model
- */
- public String getName() {
- return SurfJNI.Model_getName(swigCPtr, this);
- }
-
-
/**
* Share the resources between the actions
* @param now the current time
public final static native void delete_TmgrTrace(long jarg1);
public final static native long TmgrTraceEvent_getIdx(long jarg1, TmgrTraceEvent jarg1_);
public final static native void delete_TmgrTraceEvent(long jarg1);
- public final static native String Model_getName(long jarg1, Model jarg1_);
public final static native double Model_shareResources(long jarg1, Model jarg1_, double jarg2);
public final static native double Model_shareResourcesLazy(long jarg1, Model jarg1_, double jarg2);
public final static native double Model_shareResourcesFull(long jarg1, Model jarg1_, double jarg2);
public final static native long Model_getRunningActionSet(long jarg1, Model jarg1_);
public final static native void Model_addTraces(long jarg1, Model jarg1_);
public final static native void delete_Model(long jarg1);
- public final static native long new_CpuModel(String jarg1);
+ public final static native long new_CpuModel();
public final static native void delete_CpuModel(long jarg1);
public final static native long CpuModel_createCpu(long jarg1, CpuModel jarg1_, String jarg2, double[] jarg3, int jarg4, double jarg5, long jarg6, TmgrTrace jarg6_, int jarg7, int jarg8, long jarg9, TmgrTrace jarg9_, long jarg10, XbtDict jarg10_);
public final static native void CpuModel_director_connect(CpuModel obj, long cptr, boolean mem_own, boolean weak_global);
}
-SwigDirector_CpuModel::SwigDirector_CpuModel(JNIEnv *jenv, char const *name) : CpuModel(name), Swig::Director(jenv) {
+SwigDirector_CpuModel::SwigDirector_CpuModel(JNIEnv *jenv) : CpuModel(), Swig::Director(jenv) {
}
double SwigDirector_CpuModel::shareResources(double now) {
}
-SWIGEXPORT jstring JNICALL Java_org_simgrid_surf_SurfJNI_Model_1getName(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_) {
- jstring jresult = 0 ;
- Model *arg1 = (Model *) 0 ;
- char *result = 0 ;
-
- (void)jenv;
- (void)jcls;
- (void)jarg1_;
- arg1 = *(Model **)&jarg1;
- result = (char *)(arg1)->getName();
- if (result) jresult = jenv->NewStringUTF((const char *)result);
- return jresult;
-}
-
-
SWIGEXPORT jdouble JNICALL Java_org_simgrid_surf_SurfJNI_Model_1shareResources(JNIEnv *jenv, jclass jcls, jlong jarg1, jobject jarg1_, jdouble jarg2) {
jdouble jresult = 0 ;
Model *arg1 = (Model *) 0 ;
}
-SWIGEXPORT jlong JNICALL Java_org_simgrid_surf_SurfJNI_new_1CpuModel(JNIEnv *jenv, jclass jcls, jstring jarg1) {
+SWIGEXPORT jlong JNICALL Java_org_simgrid_surf_SurfJNI_new_1CpuModel(JNIEnv *jenv, jclass jcls) {
jlong jresult = 0 ;
- char *arg1 = (char *) 0 ;
CpuModel *result = 0 ;
(void)jenv;
(void)jcls;
- arg1 = 0;
- if (jarg1) {
- arg1 = (char *)jenv->GetStringUTFChars(jarg1, 0);
- if (!arg1) return 0;
- }
- result = (CpuModel *)new SwigDirector_CpuModel(jenv,(char const *)arg1);
+ result = (CpuModel *)new SwigDirector_CpuModel(jenv);
*(CpuModel **)&jresult = result;
- {
-
- }
return jresult;
}
public:
void swig_connect_director(JNIEnv *jenv, jobject jself, jclass jcls, bool swig_mem_own, bool weak_global);
- SwigDirector_CpuModel(JNIEnv *jenv, char const *name);
+ SwigDirector_CpuModel(JNIEnv *jenv);
virtual double shareResources(double now);
virtual double shareResourcesLazy(double now);
virtual double shareResourcesFull(double now);
%nodefaultctor Model;
class Model {
public:
- Model(const char *name);
- const char *getName();
+ Model();
+
virtual double shareResources(double now);
virtual double shareResourcesLazy(double now);
virtual double shareResourcesFull(double now);
%feature("director") CpuModel;
class CpuModel : public Model {
public:
- CpuModel(const char *name);
+ CpuModel();
virtual ~CpuModel();
virtual Cpu *createCpu(const char *name, DoubleDynar power_peak,
int pstate, double power_scale,
xbt_dynar_push(model_list, &model_vm);
}
-CpuCas01Model::CpuCas01Model() : CpuModel("cpu")
+CpuCas01Model::CpuCas01Model() : CpuModel()
{
char *optim = xbt_cfg_get_string(_sg_cfg_set, "cpu/optim");
int select = xbt_cfg_get_boolean(_sg_cfg_set, "cpu/maxmin_selective_update");
*/
XBT_PUBLIC_CLASS CpuModel : public Model {
public:
- /**
- * @brief CpuModel constructor
- *
- * @param name The name of the model
- */
- CpuModel(const char *name) : Model(name) {};
+ /** @brief Constructor */
+ CpuModel() : Model() {};
/**
* @brief Create a Cpu
xbt_dynar_push(model_list, &model_vm);
}
-CpuTiModel::CpuTiModel() : CpuModel("cpu_ti")
+CpuTiModel::CpuTiModel() : CpuModel()
{
p_runningActionSetThatDoesNotNeedBeingChecked = new ActionList();
sg_platf_host_add_cb(host_parse_init);
}
-HostCLM03Model::HostCLM03Model()
- : HostModel("Host CLM03")
-{
-}
-
-HostCLM03Model::~HostCLM03Model()
-{}
-
Host *HostCLM03Model::createHost(const char *name){
sg_host_t sg_host = sg_host_by_name(name);
Host *host = new HostCLM03(surf_host_model, name, NULL,
class HostCLM03Model : public HostModel {
public:
- HostCLM03Model();
- ~HostCLM03Model();
+ HostCLM03Model(): HostModel(){}
+ ~HostCLM03Model() {}
Host *createHost(const char *name);
double shareResources(double now);
/*********
* Model *
*********/
-HostModel::HostModel(const char *name)
- : Model(name)
-{}
-
-HostModel::HostModel()
-: Model("Host") {}
-
-HostModel::~HostModel() {
-}
-
/* Each VM has a dummy CPU action on the PM layer. This CPU action works as the
* constraint (capacity) of the VM in the PM layer. If the VM does not have any
* active task, the dummy CPU action must be deactivated, so that the VM does
*/
class HostModel : public Model {
public:
- /** @brief Constructor */
- HostModel(const char *name);
-
- /** @brief Constructor */
- HostModel();
-
- /** @brief Destructor */
- ~HostModel();
+ HostModel() : Model() {}
+ ~HostModel() {}
virtual Host *createHost(const char *name)=0;
void addTraces(){DIE_IMPOSSIBLE;}
}
-HostL07Model::HostL07Model() : HostModel("Host ptask_L07") {
+HostL07Model::HostL07Model() : HostModel() {
if (!ptask_maxmin_system)
ptask_maxmin_system = lmm_system_new(1);
surf_host_model = NULL;
class CpuL07Model : public CpuModel {
public:
- CpuL07Model() : CpuModel("cpuL07") {};
+ CpuL07Model() : CpuModel() {};
~CpuL07Model() {surf_cpu_model_pm = NULL;};
Cpu *createCpu(const char *name, xbt_dynar_t powerPeak,
int pstate, double power_scale,
xbt_cfg_setdefault_double(_sg_cfg_set, "network/weight_S", 8775);
}
-void NetworkCm02Model::initialize()
+NetworkCm02Model::NetworkCm02Model()
+ :NetworkModel()
{
char *optim = xbt_cfg_get_string(_sg_cfg_set, "network/optim");
int select =
private:
void initialize();
public:
- NetworkCm02Model(int /*i*/) : NetworkModel("network") {
+ NetworkCm02Model(int /*i*/) : NetworkModel() {
f_networkSolve = lmm_solve;
m_haveGap = false;
};//FIXME: add network clean interface
- NetworkCm02Model(const char *name) : NetworkModel(name) {
- this->initialize();
- }
- NetworkCm02Model() : NetworkModel("network") {
- this->initialize();
- }
+ NetworkCm02Model();
~NetworkCm02Model() {
}
Link* createLink(const char *name,
class NetworkConstantModel : public NetworkCm02Model {
public:
NetworkConstantModel()
- : NetworkCm02Model("constant time network")
+ : NetworkCm02Model()
{
p_updateMechanism = UM_UNDEFINED;
};
double shareResources(double now);
void updateActionsState(double now, double delta);
- Action *communicate(RoutingEdge *src, RoutingEdge *dst,
- double size, double rate);
+ Action *communicate(RoutingEdge *src, RoutingEdge *dst, double size, double rate);
void gapRemove(Action *action);
};
class NetworkModel : public Model {
public:
/** @brief Constructor */
- NetworkModel() : Model("network") { }
+ NetworkModel() : Model() { }
- /** @brief Constructor */
- NetworkModel(const char *name) : Model(name) { }
-
- /** @brief The destructor of the NetworkModel */
+ /** @brief Destructor */
~NetworkModel() {
if (p_maxminSystem)
lmm_system_free(p_maxminSystem);
xbt_dynar_push(model_list, &surf_network_model);
}
-NetworkNS3Model::NetworkNS3Model() : NetworkModel("network NS3") {
+NetworkNS3Model::NetworkNS3Model() : NetworkModel() {
if (ns3_initialize(xbt_cfg_get_string(_sg_cfg_set, "ns3/TcpModel"))) {
xbt_die("Impossible to initialize NS3 interface");
}
* Model *
*********/
-StorageModel::StorageModel() : Model("Storage") {
+StorageModel::StorageModel()
+ : Model()
+{
p_storageList = NULL;
}
* Model *
*********/
-Model::Model(const char *name)
+Model::Model()
: p_maxminSystem(NULL)
- , p_name(name)
{
p_readyActionSet = new ActionList();
p_runningActionSet = new ActionList();
*/
XBT_PUBLIC_CLASS Model {
public:
- /**
- * @brief Model constructor
- *
- * @param name the name of the model
- */
- Model(const char *name);
-
- /**
- * @brief Model destructor
- */
+ /** @brief Constructor */
+ Model();
+ /** @brief Destructor */
virtual ~Model();
virtual void addTraces() =0;
- /**
- * @brief Get the name of the current Model
- *
- * @return The name of the current Model
- */
- const char *getName() {return p_name;}
-
/**
* @brief Get the set of [actions](@ref Action) in *ready* state
*
xbt_heap_t p_actionHeap;
private:
- const char *p_name;
-
ActionListPtr p_readyActionSet; /**< Actions in state SURF_ACTION_READY */
ActionListPtr p_runningActionSet; /**< Actions in state SURF_ACTION_RUNNING */
ActionListPtr p_failedActionSet; /**< Actions in state SURF_ACTION_FAILED */
* Model *
*********/
-VMModel::VMModel() : HostModel("Virtual Machine") {}
-
VMModel::vm_list_t VMModel::ws_vms;
/************
*/
class VMModel : public HostModel {
public:
- VMModel();
+ VMModel() :HostModel(){}
~VMModel(){};
Host *createHost(const char *name){DIE_IMPOSSIBLE;}