You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
ADProvenanceDBengine now initializes the Thallium server with a json configuration rather than the basic constructor
Mercury authorization key can now optionally be passed to ADProvenanceDBengine
Added cmdline options to pass Mercury authorization key to pserver, driver and provdb_commit
run_services.sh and chimbuko_config.sh now allow passing extra arguments to provdb_commit
addOptionalCommandLineArg(p, provdb_addr_dir, "Directory in which the provenance database outputs its address files. If empty (default) the provenance DB will not be used.");
89
89
addOptionalCommandLineArg(p, nprovdb_shards, "Number of provenance database shards. Clients connect to shards round-robin by rank (default 1)");
90
90
addOptionalCommandLineArg(p, nprovdb_instances, "Number of provenance database instances. Shards are divided uniformly over instances. (default 1)");
91
+
addOptionalCommandLineArg(p, provdb_mercury_auth_key, "Set the Mercury authorization key for connection to the provDB (default \"\")");
91
92
#endif
92
93
#ifdef _PERF_METRIC
93
94
addOptionalCommandLineArg(p, perf_outputpath, "Output path for AD performance monitoring data. If an empty string (default) no output is written.");
addOptionalCommandLineArg(p, provdb_addr_dir, "The directory containing the address file written out by the provDB server. An empty string will disable the connection to the global DB. (default empty, disabled)");
92
+
addOptionalCommandLineArg(p, provdb_mercury_auth_key, "Set the Mercury authorization key for connection to the provDB (default \"\")");
91
93
#endif
92
94
addOptionalCommandLineArg(p, prov_outputpath, "Output global provenance data to this directory. Can be used in place of or in conjunction with the provenance database. An empty string \"\" (default) disables this output");
93
95
addOptionalCommandLineArg(p, model_update_freq, "The frequency in ms at which the global AD model is updated (default 1000ms)");
@@ -158,6 +160,11 @@ int main (int argc, char ** argv){
Copy file name to clipboardExpand all lines: include/chimbuko/chimbuko.hpp
+1Lines changed: 1 addition & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -45,6 +45,7 @@ namespace chimbuko {
45
45
std::string provdb_addr_dir; /**< Directory in which the provenance database writes its address files. If an empty string the provDB will not be used*/
46
46
int nprovdb_shards; /**< Number of database shards*/
47
47
int nprovdb_instances; /**< Number of instances of the provenance database server*/
48
+
std::string provdb_mercury_auth_key; /**< An authorization key for initializing Mercury (optional, default "")*/
48
49
#endif
49
50
int prov_record_startstep; /**< If != -1, the IO step on which to start recording provenance information for anomalies */
50
51
int prov_record_stopstep; /**< If != -1, the IO step on which to stop recording provenance information for anomalies */
Copy file name to clipboardExpand all lines: scripts/launch/chimbuko_config.sh
+2Lines changed: 2 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -36,6 +36,8 @@ provdb_auto_interface=true #if true, the server will automatically choose its in
36
36
#With "verbs" provider (used for infiniband, iWarp, etc) we need to also specify the domain, which can be found by running fi_info (on a compute node)
37
37
provdb_domain= #only needed for verbs provider. If left blank it will be chosen automatically. <------------ ***SET ME (if using verbs)***
38
38
39
+
commit_extra_args=""#extra arguments for the committer
40
+
39
41
export FI_UNIVERSE_SIZE=1600 # Defines the expected number of provenance DB clients per instance <------------- *** SET ME (should be larger than the number of clients/instance)
40
42
export FI_MR_CACHE_MAX_COUNT=0 # disable MR cache in libfabric; still problematic as of libfabric 1.10.1
41
43
export FI_OFI_RXM_USE_SRX=1 # use shared recv context in RXM; should improve scalability
m_eng = newthallium::engine(m_protocol.first, m_protocol.second, true, -1); //3rd arg: use dedicated progress thread, 4th arg: use this thread for RPCs
13
+
14
+
nlohmann::json cfgj;
15
+
cfgj["use_progress_thread"] = true;
16
+
cfgj["rpc_thread_count"] = -1; //use this thread for RPCs
0 commit comments