Skip to content
Snippets Groups Projects

Add an option to fix the message size

Merged Peter W. Draper requested to merge fixed-size into master
+ 17
2
@@ -38,6 +38,10 @@ static int verbose = 0;
/* Attempt to keep original injection time differences. */
static int usetics = 1;
/* Size of the messages we send. This overrides the logged values when not
* zero . */
static size_t messagesize = 0;
/* Set a data pattern and check we get this back, slow... */
static int datacheck = 0;
@@ -383,6 +387,9 @@ static void pick_logs(void) {
if (log->rank == myrank && log->activation) {
if (log->type == task_type_send || log->type == task_type_recv) {
/* Override size if needed. */
if (messagesize > 0) log->size = messagesize;
/* And keep this log. */
log->data = NULL;
reqs_queue[nr_reqs] = log;
@@ -411,7 +418,8 @@ static void pick_logs(void) {
static void usage(char *argv[]) {
fprintf(stderr, "Usage: %s [-vf] SWIFT_mpiuse-log-file.dat logfile.dat\n",
argv[0]);
fprintf(stderr, " options: -v verbose, -f fast injections\n");
fprintf(stderr, " options: -v verbose, -f fast injections, "
"-s message size (bytes)\n");
fflush(stderr);
}
@@ -437,7 +445,7 @@ int main(int argc, char *argv[]) {
/* Handle the command-line, we expect a mpiuse data file to read and various
* options. */
int opt;
while ((opt = getopt(argc, argv, "vfd")) != -1) {
while ((opt = getopt(argc, argv, "vfds:")) != -1) {
switch (opt) {
case 'd':
datacheck = 1;
@@ -448,6 +456,9 @@ int main(int argc, char *argv[]) {
case 'v':
verbose = 1;
break;
case 's':
messagesize = atoll(optarg);
break;
default:
if (myrank == 0) usage(argv);
return 1;
@@ -486,6 +497,10 @@ int main(int argc, char *argv[]) {
if (myrank == 0) {
message("Start of MPI tests");
message("==================");
if (messagesize > 0) {
message(" ");
message(" Using fixed message size of %zd", messagesize);
}
if (verbose) {
if (!usetics) message("using fast untimed injections");
if (datacheck)
Loading