X-Git-Url: https://bilbo.iut-bm.univ-fcomte.fr/and/gitweb/loba.git/blobdiff_plain/8da825f95900484f657c27e30eafe4aacbba3af5..c0eaeb249c8fd246f3a56f18f61e417c277f43c1:/options.h?ds=inline diff --git a/options.h b/options.h index ed5b498..f9baa88 100644 --- a/options.h +++ b/options.h @@ -1,6 +1,7 @@ #ifndef OPTIONS_H #define OPTIONS_H +#include // std::sig_atomic_t #include #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 int option_x; // hidden option (int), for testing + extern double option_X; // hidden option (double), for testing // Simulation parameters extern int log_rate; + extern volatile std::sig_atomic_t exit_request; // Platform and deployment extern std::string platform_file; @@ -33,22 +37,33 @@ namespace opt { 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; + extern bool egocentric; + extern double min_transfer_amount; + extern double max_transfer_amount; + extern double min_lb_iter_duration; + extern bool integer_transfer; + extern unsigned loba_best_divisor; // Application parameters extern cost_func comp_cost; extern cost_func comm_cost; - extern double min_lb_iter_duration; extern double min_comp_iter_duration; + extern unsigned comp_iter_delay; + extern double comp_time_delay; // Parameters for the end of the simulation + extern double avg_load_ratio; extern unsigned lb_maxiter; extern unsigned comp_maxiter; extern double time_limit; + extern unsigned exit_on_convergence; extern bool exit_on_close; // Named parameters lists