htrdr

Solving radiative transfer in heterogeneous media
git clone git://git.meso-star.fr/htrdr.git
Log | Files | Refs | README | LICENSE

commit 8c8732ca69a4897f7b71244222446cfa0664d110
parent edab4a8edd400e580fe0850f87423e45f6df25f9
Author: Vincent Forest <vincent.forest@meso-star.com>
Date:   Fri, 14 Feb 2025 15:33:19 +0100

core: adjustments to distribution policy

Query steal requests more frequently and steal more work. Overheads are
negligible and this improves work balance when using very heterogeneous
computers.

Diffstat:
Msrc/core/htrdr_proc_work.c | 4++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/src/core/htrdr_proc_work.c b/src/core/htrdr_proc_work.c @@ -197,7 +197,7 @@ mpi_probe_thieves } /* Don't constantly check for thieves */ - t.tv_nsec = 500000000; /* 500ms */ + t.tv_nsec = 10000000; /* 10ms */ nanosleep(&t, NULL); } #undef P_MPI @@ -216,7 +216,7 @@ mpi_steal_work int proc_to_steal; /* Rank of the process to steal */ /* Empircally set the number of chunks to steal */ - const uint8_t nchunks_to_steal = MMIN((uint8_t)(htrdr->nthreads*2), 16); + const uint8_t nchunks_to_steal = MMIN((uint8_t)(htrdr->nthreads*4), 32); uint8_t i = 0; ASSERT(htrdr && rng && work && htrdr->nthreads < UINT8_MAX);