Description
Some providers (mostly SHM, but SHM is used in EFA if intra-node is possible), cannot queue multiple writes without completion queue reads in between.
Since the completion queue is only read when the user calls makeProgress this makes it impossible to queue multiple writes behind a single transferGrain or transferSamples call. This is an issue with sliced transfers of flows with alpha channel, but also audio flows with more than 3 channels.
We need to queue writes internally and flush them under makeProgress. This can probably be implemented together with #622
Additional Context
No response
Description
Some providers (mostly SHM, but SHM is used in EFA if intra-node is possible), cannot queue multiple writes without completion queue reads in between.
Since the completion queue is only read when the user calls
makeProgressthis makes it impossible to queue multiple writes behind a singletransferGrainortransferSamplescall. This is an issue with sliced transfers of flows with alpha channel, but also audio flows with more than 3 channels.We need to queue writes internally and flush them under
makeProgress. This can probably be implemented together with #622Additional Context
No response