[Cluster] Use a sendrecv ring instead of allgather

Using point to point instead of a collective improves performance, and might be more flexible for future improvements.
Also corrects the condition for the number elements required to fill the send buffer.

The actual Elo gains depends a bit on the setup used for testing.

8mpi x 32t yields 141 - 102 - 957 ~ 11 Elo
8mpi x 1t yields 70 +- 9 Elo.
This commit is contained in:
Joost VandeVondele
2018-12-29 16:09:48 +01:00
committed by Stéphane Nicolet
parent 5e7777e9d0
commit bf17a410ec
3 changed files with 36 additions and 31 deletions
+1 -1
View File
@@ -141,7 +141,7 @@ void ThreadPool::set(size_t requested) {
TT.resize(Options["Hash"]);
// Adjust cluster buffers
Cluster::ttRecvBuff_resize(requested);
Cluster::ttSendRecvBuff_resize(requested);
}
}