aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorLoic Guegan <manzerbredes@mailbox.org>2021-05-10 10:33:11 +0200
committerLoic Guegan <manzerbredes@mailbox.org>2021-05-10 10:33:11 +0200
commitbf8117d3aa6f76290fb1938c13902594420eb892 (patch)
treefe80c5351c01111697b84a329a4479f32c3d4c98 /src
parent51d0c256a349f147b41221ac82932371f2037341 (diff)
Improve scenarios and analysis
Diffstat (limited to 'src')
-rw-r--r--src/Inputs.cc3
-rw-r--r--src/Inputs.hpp2
-rw-r--r--src/scenarios.cc40
-rw-r--r--src/simulator.cc2
4 files changed, 22 insertions, 25 deletions
diff --git a/src/Inputs.cc b/src/Inputs.cc
index cf91de4..22af68b 100644
--- a/src/Inputs.cc
+++ b/src/Inputs.cc
@@ -17,7 +17,6 @@ Inputs::Inputs(std::string node_name){
use_hint=d["nodes"][node_name.c_str()]["use_hint"].GetBool();
data_size=d["nodes"][node_name.c_str()]["data_size"].GetInt();
extended=d["extended"].GetBool();
- simkey=d["simkey"].GetString();
seed=d["seed"].GetInt();
n_nodes=d["nodes"].MemberCount();
@@ -156,7 +155,7 @@ void Inputs::GeneratePlatform(std::string p){
pf << "<?xml version='1.0'?>\n";
pf << "<!DOCTYPE platform SYSTEM \"http://simgrid.gforge.inria.fr/simgrid/simgrid.dtd\">\n";
pf << "<platform version=\"4.1\">\n <AS id=\"AS0\" routing=\"Cluster\">\n";
- pf << " <link id=\"link\" bandwidth=\"1Mbps\" latency=\"0ms\" sharing_policy=\"SHARED\"></link>\n";
+ pf << " <link id=\"link\" bandwidth=\""<<d["bitrate"].GetString()<<"\" latency=\"0ms\" sharing_policy=\"SHARED\"></link>\n";
for (Value::ConstMemberIterator itr = d["nodes"].MemberBegin(); itr != d["nodes"].MemberEnd(); ++itr)
{
std::string name=itr->name.GetString();
diff --git a/src/Inputs.hpp b/src/Inputs.hpp
index 0bec0b5..bbe4d8b 100644
--- a/src/Inputs.hpp
+++ b/src/Inputs.hpp
@@ -79,6 +79,4 @@ public:
int data_size;
int seed;
int n_nodes;
- std::string simkey;
-
}; \ No newline at end of file
diff --git a/src/scenarios.cc b/src/scenarios.cc
index 9395840..f34c9c3 100644
--- a/src/scenarios.cc
+++ b/src/scenarios.cc
@@ -17,10 +17,10 @@ using namespace rapidjson;
int main(int argc, char **argv){
// Setup seed
- if(argc!=15){
+ if(argc!=14){
cerr << "Usage: " << argv[0] <<
- " <seed> <simtime> <wakeupsd> <wakeupevery> <wakeupfor> <n_nodes>" <<
- " <extended> <hint> <poff> <pon> <prx> <ptx> <datasize> <simkey>" <<
+ " <seed> <simtime> <wakeupevery> <wakeupfor> <n_nodes>" <<
+ " <extended> <hint> <poff> <pon> <prx> <ptx> <datasize> <bitrate>" <<
endl;
exit(1);
}
@@ -28,18 +28,18 @@ int main(int argc, char **argv){
// Init parameters
int seed=atoi(argv[1]);
double simtime=stod(argv[2]);
- unsigned int wakeupsd=atoi(argv[3]);
- unsigned int wakeupevery=atoi(argv[4]);
- double wakeupfor=stod(argv[5]);
- unsigned int n_nodes=atoi(argv[6]);
- bool extended=!strcmp("true",argv[7]);
- bool hint=!strcmp("true",argv[8]);
- double poff=stod(argv[9]);
- double pon=stod(argv[10]);
- double prx=stod(argv[11]);
- double ptx=stod(argv[12]);
- unsigned int datasize=atoi(argv[13]);
- string simkey(argv[14]);
+ unsigned int wakeupevery=atoi(argv[3]);
+ double wakeupfor=stod(argv[4]);
+ unsigned int n_nodes=atoi(argv[5]);
+ bool extended=!strcmp("true",argv[6]);
+ bool hint=!strcmp("true",argv[7]);
+ double poff=stod(argv[8]);
+ double pon=stod(argv[9]);
+ double prx=stod(argv[10]);
+ double ptx=stod(argv[11]);
+ unsigned int datasize=atoi(argv[12]);
+ string bitrate(argv[13]);
+
// Setup seed
srand(seed);
@@ -47,10 +47,10 @@ int main(int argc, char **argv){
// Create document
Document d;
d.SetObject();
- Value simkeyValue;
- simkeyValue.SetString(simkey.c_str(),simkey.size(),d.GetAllocator());
- d.AddMember("simkey",simkeyValue,d.GetAllocator());
d.AddMember("seed",Value().SetInt(seed),d.GetAllocator());
+ Value simkeyValue;
+ simkeyValue.SetString(bitrate.c_str(),bitrate.size(),d.GetAllocator());
+ d.AddMember("bitrate",simkeyValue,d.GetAllocator());
d.AddMember("extended",extended,d.GetAllocator());
// Create nodes
@@ -69,8 +69,8 @@ int main(int argc, char **argv){
// Setup ts and durations
Value ts(kArrayType);
Value duration(kArrayType);
- for(unsigned int i=0;(i+wakeupfor)<simtime;i+=RAND(wakeupevery-wakeupsd,wakeupevery+wakeupsd)){
- ts.PushBack(Value().SetDouble(i),d.GetAllocator());
+ for(unsigned int i=0;i<simtime;i+=wakeupevery){
+ ts.PushBack(Value().SetDouble(RAND(i,i+wakeupevery)),d.GetAllocator());
duration.PushBack(Value().SetDouble(wakeupfor),d.GetAllocator());
}
node.AddMember("wake_ts",ts,d.GetAllocator());
diff --git a/src/simulator.cc b/src/simulator.cc
index 87cbe84..911f860 100644
--- a/src/simulator.cc
+++ b/src/simulator.cc
@@ -183,5 +183,5 @@ static void obs_node(std::vector<std::string> args) {
}
// Done
MODE_OFF()
- XBT_INFO("Observation node %s finished [LOG2PARSE](node:%s|nSend:%d|nWakeUp:%d|nDataRcv:%d|nSendFail:%d|nRcvFail:%d|simkey:%s|seed:%d)",selfName.c_str(),selfName.c_str(),nSend,nWakeUp,nDataRcv,nSendFail,nRcvFail,i.simkey.c_str(),i.seed);
+ XBT_INFO("Observation node %s finished [LOG2PARSE](node:%s|nSend:%d|nWakeUp:%d|nDataRcv:%d|nSendFail:%d|nRcvFail:%d|seed:%d)",selfName.c_str(),selfName.c_str(),nSend,nWakeUp,nDataRcv,nSendFail,nRcvFail,i.seed);
} \ No newline at end of file