]> AND Private Git Repository - loba.git/blobdiff - options.h
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
Temporarily use opt::option_x in algorithms (2)besteffort.
[loba.git] / options.h
index d507208116d97b5b5ca38cb04d135c0b1d7cc7e9..89a3f1285ce44b91a9c045ad2247ecb48d1eab92 100644 (file)
--- a/options.h
+++ b/options.h
@@ -1,6 +1,7 @@
 #ifndef OPTIONS_H
 #define OPTIONS_H
 
 #ifndef OPTIONS_H
 #define OPTIONS_H
 
+#include <csignal>              // std::sig_atomic_t
 #include <string>
 #include "cost_func.h"
 #include "named_object_list.h"
 #include <string>
 #include "cost_func.h"
 #include "named_object_list.h"
@@ -19,9 +20,12 @@ namespace opt {
     extern std::string program_name;
     extern int help_requested;
     extern bool version_requested;
     extern std::string program_name;
     extern int help_requested;
     extern bool version_requested;
+    extern int option_x;       // hidden option (int), for testing
+    extern double option_X;    // hidden option (double), for testing
 
     // Simulation parameters
 
     // Simulation parameters
-    extern unsigned log_rate;
+    extern int log_rate;
+    extern volatile std::sig_atomic_t exit_request;
 
     // Platform and deployment
     extern std::string platform_file;
 
     // Platform and deployment
     extern std::string platform_file;
@@ -33,19 +37,30 @@ namespace opt {
         extern std::string topology;
         extern unsigned    nhosts;
         extern double      load;
         extern std::string topology;
         extern unsigned    nhosts;
         extern double      load;
+        extern bool        random_distribution;
+        extern unsigned long random_seed;
     }
 
     // Load balancing algorithm
     extern std::string loba_algo;
     extern bool bookkeeping;
     }
 
     // Load balancing algorithm
     extern std::string loba_algo;
     extern bool bookkeeping;
+    extern bool egocentric;
+    extern double min_transfer_amount;
+    extern double max_transfer_amount;
+    extern double min_lb_iter_duration;
+    extern bool integer_transfer;
 
     // Application parameters
     extern cost_func comp_cost;
     extern cost_func comm_cost;
 
     // Application parameters
     extern cost_func comp_cost;
     extern cost_func comm_cost;
+    extern double min_comp_iter_duration;
+    extern unsigned comp_iter_delay;
+    extern double comp_time_delay;
 
     // Parameters for the end of the simulation
 
     // Parameters for the end of the simulation
-    extern unsigned comp_maxiter;
     extern unsigned lb_maxiter;
     extern unsigned lb_maxiter;
+    extern unsigned comp_maxiter;
+    extern double time_limit;
     extern bool exit_on_close;
 
     // Named parameters lists
     extern bool exit_on_close;
 
     // Named parameters lists