pika-org / pika

pika builds on C++ std::execution with fiber, CUDA, HIP, and MPI support.
https://pikacpp.org
Boost Software License 1.0
61 stars 10 forks source link

Allow controlling maximum lifetime of operation states in sender algorithms #479

Closed msimberg closed 11 months ago

msimberg commented 2 years ago

Some operation states may currently hold on to e.g. DLA-Future tiles longer than necessary. This inhibits them from releasing their resources and allowing other algorithms to access the same tile.

We need either

  1. An adaptor that can be used to release previous operation states, or
  2. A way to explicitly/manually release tiles etc. in DLA-Future, or
  3. Tighter guarantees about the maximum lifetime of operation states in P2300.

  1. or 2. are easy enough to do as temporary solutions until it becomes clear if 3. is feasible.
msimberg commented 11 months ago
  1. was fixed by #772, 2. by https://github.com/eth-cscs/DLA-Future/pull/930 (with consume_rvalues).