diff options
author | 2022-09-14 14:02:22 -0700 | |
---|---|---|
committer | 2022-09-14 14:02:22 -0700 | |
commit | 04b6f67caab8ee95428a569c529110a12b2527f3 (patch) | |
tree | 43d9a3f14301c279a34bfc7ad93930528febc965 /Source/FieldSolver/SpectralSolver/SpectralHankelTransform | |
parent | 0f344d617d7393b16c955018d95e1aa5d47ebb94 (diff) | |
download | WarpX-04b6f67caab8ee95428a569c529110a12b2527f3.tar.gz WarpX-04b6f67caab8ee95428a569c529110a12b2527f3.tar.zst WarpX-04b6f67caab8ee95428a569c529110a12b2527f3.zip |
Frontier/Crusher: Less Invasive libFabric Work-Around (#3396)
From Steve Abbott (HPE):
> There's a known problem with the default libfabrics memory
> registration cache monitor that impacts codes that allocate and
> free MPI buffers frequently. What you're doing now,
> FI_MR_CACHE_MAX_COUNT=0 is a big hammer that disables the memory
> registration cache all together. That can have a negative
> performance impact, because memory registration is a heavy
> operation, but it doesn't seem to be hitting WarpX very hard. If
> you're mostly following an allocate-communicate-free pattern, the
> memory registration cache won't help you anyway.
>
> An alternative is to set FI_MR_CACHE_MONITOR=memhooks , which uses
> an alternative cache monitor that doesn't have the same problem. I
> tested on an 8 node WarpX case we have in a bug and only saw a 2%
> speedup over FI_MR_CACHE_MAX_COUNT=0, and that speedup was in
> FillBoundary which I'm guessing is the only place you might have
> some MPI buffer reuse. If you start to scale out you may want to
> try it.
>
> We're working on a new default cache monitor that won't have this
> problem but I'm not sure the timeline for it. We'll make sure that
> when it gets pushed out we'll let you know, but for now you have to
> keep using either of these two environment variables.
Diffstat (limited to 'Source/FieldSolver/SpectralSolver/SpectralHankelTransform')
0 files changed, 0 insertions, 0 deletions