A
lgorithmique
N
umérique
D
istribuée
Public GIT Repository
projects
/
simgrid.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
boss not happy, partial revert
[simgrid.git]
/
src
/
smpi
/
mpi
/
smpi_comm.cpp
diff --git
a/src/smpi/mpi/smpi_comm.cpp
b/src/smpi/mpi/smpi_comm.cpp
index
f6b3170
..
e8e893f
100644
(file)
--- a/
src/smpi/mpi/smpi_comm.cpp
+++ b/
src/smpi/mpi/smpi_comm.cpp
@@
-340,12
+340,12
@@
void Comm::unref(Comm* comm){
MPI_Comm Comm::find_intra_comm(int * leader){
//get the indices of all processes sharing the same simix host
MPI_Comm Comm::find_intra_comm(int * leader){
//get the indices of all processes sharing the same simix host
- auto
actor_list = sg_host_self()->pimpl_->get_all_actors()
;
+ auto
& actor_list = sg_host_self()->pimpl_->actor_list_
;
int intra_comm_size = 0;
int min_index = INT_MAX; // the minimum index will be the leader
for (auto& actor : actor_list) {
int intra_comm_size = 0;
int min_index = INT_MAX; // the minimum index will be the leader
for (auto& actor : actor_list) {
- int index = actor
->
get_pid();
- if (this->group()->rank(actor.
get
()) != MPI_UNDEFINED) { // Is this process in the current group?
+ int index = actor
.
get_pid();
+ if (this->group()->rank(actor.
ciface
()) != MPI_UNDEFINED) { // Is this process in the current group?
intra_comm_size++;
if (index < min_index)
min_index = index;
intra_comm_size++;
if (index < min_index)
min_index = index;
@@
-355,8
+355,8
@@
MPI_Comm Comm::find_intra_comm(int * leader){
MPI_Group group_intra = new Group(intra_comm_size);
int i = 0;
for (auto& actor : actor_list) {
MPI_Group group_intra = new Group(intra_comm_size);
int i = 0;
for (auto& actor : actor_list) {
- if (this->group()->rank(actor.
get
()) != MPI_UNDEFINED) {
- group_intra->set_mapping(actor.
get
(), i);
+ if (this->group()->rank(actor.
ciface
()) != MPI_UNDEFINED) {
+ group_intra->set_mapping(actor.
ciface
(), i);
i++;
}
}
i++;
}
}