A
lgorithmique
N
umérique
D
istribuée
Private GIT Repository
projects
/
loba.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Partially revert "ajout de 3 fichiers pour lancer des expés"
[loba.git]
/
options.h
diff --git
a/options.h
b/options.h
index 5c43e6f2962420d2d35e82047227efeb6afe85bd..f0f29359e993396f20601a4ba86d90b43e305453 100644
(file)
--- a/
options.h
+++ b/
options.h
@@
-1,11
+1,14
@@
#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 <string>
#include "cost_func.h"
-#include "deployment.h"
#include "named_object_list.h"
#include "named_object_list.h"
-#include "process.h"
+
+// These classes may use include options.h, so make forward declarations
+class deployment_generator;
+class process;
// Global parameters, shared by all the processes
namespace opt {
// Global parameters, shared by all the processes
namespace opt {
@@
-17,9
+20,11
@@
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, for debugging purpose
// 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;
@@
-31,16
+36,29
@@
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 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 unsigned maxiter;
+ extern double min_comp_iter_duration;
+ extern unsigned comp_iter_delay;
+ extern double comp_time_delay;
+
+ // Parameters for the end of the simulation
+ 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
@@
-55,7
+73,7
@@
namespace opt {
} topologies;
// Utility functions
} topologies;
// Utility functions
-
int
parse_args(int* argc, char* argv[]);
+
bool
parse_args(int* argc, char* argv[]);
void print();
void usage();
void print();
void usage();