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
ADIOS2 reader no longer uses MPI (it is not needed)
Modified code such that Chimbuko can now optionally be compiled entirely without MPI. User will have to feed the AD instance the appropriate rank idx (eg using environment variables).
Most integration tests are broken with this option. Unit tests are fine.
Added an example to benchmark_client/func_multimodal where the AD is used in non-MPI mode inside a wrapper script
Improved ADThreadNetClient:
Command to disconnect and command to terminate worker thread are now separate
Connection and disconnection are now blocking operations such that we don't have situations where the main thread thinks the connection is ready when it is not
Queueing actions now checks the worker thread is active
<< "Output will be on SST under the same filename ${input BPfile filename}. The temporary .sst file created will thus be ${input BPfile filename}.sst\n"
@@ -77,7 +75,7 @@ int main(int argc, char** argv){
77
75
}
78
76
79
77
80
-
adios2::ADIOS ad = adios2::ADIOS(MPI_COMM_SELF, adios2::DebugON);
78
+
adios2::ADIOS ad = adios2::ADIOS(adios2::DebugON);
81
79
82
80
adios2::IO io_out = ad.DeclareIO("writer");
83
81
@@ -217,6 +215,5 @@ int main(int argc, char** argv){
addOptionalCommandLineArg(p, trace_connect_timeout, "(For SST mode) Set the timeout in seconds on the connection to the TAU-instrumented binary (default 60s)");
90
94
addOptionalCommandLineArg(p, parser_beginstep_timeout, "Set the timeout in seconds on waiting for the next ADIOS2 timestep (default 30s)");
91
95
92
-
addOptionalCommandLineArg(p, rank, "Set the rank index of the trace data. Used for verification unless override_rank is set. A value < 0 signals the value to be equal to the MPI rank of Chimbuko driver (default)");
96
+
addOptionalCommandLineArg(p, rank,
97
+
#ifdef USE_MPI
98
+
"Set the rank index of the trace data. Used for verification unless override_rank is set. A value < 0 signals the value to be equal to the MPI rank of Chimbuko driver (default)"
99
+
#else
100
+
"Set the rank index of the trace data (default 0)"
Copy file name to clipboardExpand all lines: app/pclient_stats.cpp
+12-2Lines changed: 12 additions & 2 deletions
Original file line number
Diff line number
Diff line change
@@ -1,4 +1,5 @@
1
1
//A test application that mocks part of the anomaly detection modules, acting as a client for the parameter server and sending it function statistics information
2
+
#include<chimbuko_config.h>
2
3
3
4
#include"chimbuko/param/sstd_param.hpp"
4
5
#include"chimbuko/message.hpp"
@@ -9,6 +10,9 @@
9
10
#include"chimbuko/net/mpi_net.hpp"
10
11
#else
11
12
#include"chimbuko/net/zmq_net.hpp"
13
+
#endif
14
+
15
+
#ifdef USE_MPI
12
16
#include<mpi.h>
13
17
#endif
14
18
@@ -21,8 +25,9 @@ using namespace chimbuko;
21
25
intmain (int argc, char** argv)
22
26
{
23
27
constint N_MPI_PROCESSORS = 10;
24
-
int size, rank;
28
+
int size=1, rank=0;
25
29
30
+
#ifdef USE_MPI
26
31
MPI_Init(&argc, &argv);
27
32
MPI_Comm_size(MPI_COMM_WORLD, &size);
28
33
MPI_Comm_rank(MPI_COMM_WORLD, &rank);
@@ -33,6 +38,7 @@ int main (int argc, char** argv)
33
38
MPI_Finalize();
34
39
return EXIT_SUCCESS;
35
40
}
41
+
#endif
36
42
37
43
#ifdef _USE_MPINET
38
44
throwstd::runtime_error("Not implemented yet.");
@@ -103,8 +109,10 @@ int main (int argc, char** argv)
0 commit comments