From bca88eec8f92f863df968506e7b2c3cc09c6102a Mon Sep 17 00:00:00 2001 From: Denis Davydov Date: Wed, 28 Mar 2018 11:00:23 +0200 Subject: [PATCH] extend description --- include/deal.II/lac/la_parallel_block_vector.h | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/include/deal.II/lac/la_parallel_block_vector.h b/include/deal.II/lac/la_parallel_block_vector.h index 4c6aa0ff13..f9f20a82fe 100644 --- a/include/deal.II/lac/la_parallel_block_vector.h +++ b/include/deal.II/lac/la_parallel_block_vector.h @@ -84,6 +84,13 @@ namespace LinearAlgebra /** * The chunks size to split communication in update_ghost_values() * and compress() calls. + * + * Most common MPI implementations will get slow when too many + * messages/requests are outstanding. Even when messages are small, + * say 1 kB only, we should collect enough data with @p communication_block_size + * to cover typical infiniband latencies which are around a few microseconds. + * Sending 20 kB at a throughput of 5 GB/s takes 4 microseconds, + * so we should arrive at the bandwidth dominated regime then which is good enough. */ static constexpr unsigned int communication_block_size = 20; public: -- 2.39.5