-/* Copyright (c) 2009-2010, 2013-2014. The SimGrid Team.
+/* Copyright (c) 2009-2010, 2013-2017. The SimGrid Team.
* All rights reserved. */
/* This program is free software; you can redistribute it and/or modify it
MPI_Comm_rank(MPI_COMM_WORLD, &rank);
MPI_Comm_size(MPI_COMM_WORLD, &size);
if (maxlen > 1)
- mult = size;
+ mult = maxlen > size ? size : maxlen;
int* sb = (int *) xbt_malloc(size *maxlen * sizeof(int));
int* rb = (int *) xbt_malloc(size *maxlen * sizeof(int));
-
+
for (i = 0; i < size *maxlen; ++i) {
sb[i] = rank*size + i;
rb[i] = 0;
printf("%d ", rb[i]);
printf("]\n");
- if (rank == 0) {
- if (status != MPI_SUCCESS) {
- printf("all_to_all returned %d\n", status);
- fflush(stdout);
- }
+ if (rank == 0 && status != MPI_SUCCESS) {
+ printf("all_to_all returned %d\n", status);
+ fflush(stdout);
}
xbt_free(sb);
xbt_free(rb);