Skip to content

Instrument the reservation admission / forced-progress path #1165

Description

@Matt711

BufferResource::reserve() (cpp/include/rapidsmpf/memory/buffer_resource.hpp) computes an overbooking_bytes value per call that nearly every caller discards, including reserve_or_wait (cpp/src/streaming/core/memory_reserve_or_wait.cpp). Worse, the forced-progress/timeout path, the actual signal that a task is stuck waiting on memory pressure, is entirely silent. No counter, no stat, no NVTX.

This is probably the most important gap for I/O concurrency tuning right now. It's the missing half of "was this I/O task slow because of the network, or because it was blocked behind a memory reservation," which is exactly the ambiguity that would make a naive latency-only read of a sweep result wrong. Add counters for reservation attempts/successes/forced-progress-timeouts and cumulative wait time, using the same Statistics pattern as #1166.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions