Repository navigation
UCP/RNDV: Use local memory detection for RTR_REQ responder - #12041
Conversation
Signed-off-by: Guy Ealey Morag <gealeymorag@nvidia.com>
|
🤖 Starting review — findings will be posted here when done. |
Signed-off-by: Guy Ealey Morag <gealeymorag@nvidia.com>
|
🤖 Starting review — findings will be posted here when done. |
|
Coverage note: No test is added. The change is an internal invariant plus an assertion on an existing flow, so the existing RMA GET/rndv coverage ( |
tomerg-nvidia
left a comment
There was a problem hiding this comment.
Maybe add a test for this?
Signed-off-by: Guy Ealey Morag <gealeymorag@nvidia.com>
|
🤖 Starting review — findings will be posted here when done. |
Signed-off-by: Guy Ealey Morag <gealeymorag@nvidia.com>
|
🤖 Starting review — findings will be posted here when done. |
|
🤖 CI Triage Agent — TL;DR: The ASAN GPU gtest run failed on a single test, Full analysisSummary: Root cause: The log shows a clean, continuous run to teardown (no SIGTERM, no timeout, no ucs_assert abort — the process survived and reported a normal gtest summary), so this is a failed Implicated commit: File: Suggested fix: Make the rendezvous remote-protocol estimation tolerant of Related: PR #12041 (this change); #11985 / |
What?
The
get/rndvresponder (ucp_proto_rndv_rtr_req_sreq_init) now takes its buffer's memory info fromucp_memory_detect()instead of theRTR_REQheader'smem_type/sys_dev, asserting that the memory type matches. This keeps a GPU's host-stagedgettraffic on the NICs assigned to that GPU when using gpu-nic assignmentWhy?
Currently the requester fills
RTR_REQ.sys_devfrom the responder's rkey, which has nosys_devwhen no NIC can register the buffer. The send then has no owning GPU, and the GPU-NIC assignment doesn't restrict its lanes.This matters only when both are true:
Comparison with put: the RMA
put/rndvreceiver (ucp_rma_rndv_process_rts) has ignoredrts->sys_devand detected its buffer locally, with the samemem_typeassertion, since #11553. This change makes both handlers detect locally.