Enable EFA-backed Presto GPU workers - #412
Conversation
|
/ok to test |
@devavret, there was an error processing your request: See the following link for more information: https://docs.gha-runners.nvidia.com/cpr/e/1/ |
|
/ok to test d88d903 |
| # - /dev/infiniband/uverbs9 | ||
| {% if ucx_efa %} | ||
| devices: | ||
| - /dev/infiniband/rdma_cm |
There was a problem hiding this comment.
This check requires the four-card topology used by the benchmark, but the runner does not explain how that topology must be provisioned. A default g7e.48xlarge launch typically assigns an EFA interface only to network-card index 0. Interfaces for indices 1–3 must be explicitly requested through the launch configuration/CLI. Such an instance reaches this check with only uverbs0 and reports a missing device without explaining the prerequisite.
Since this script is presented as a reproducer, could we add either:
- exact AWS CLI/launch-template instructions for creating one EFA interface on each network-card index 0–3
- OR, a link to those instructions plus an actionable error such as: "Expected four EFA network cards; launch the instance with EFA interfaces assigned to NetworkCardIndex 0–3."
We can keep provisioning outside the benchmark script, but document and validate it here.
|
@kjmph Thanks for the quick review. can you please take another look. |
Summary
--ucx-efalaunch mode with host networking, EFA device access, and per-workerUCX_NET_DEVICESMotivation
Presto GPU workers need explicit EFA/SRD device and network configuration to move CUDA exchange buffers between GPUs that cannot use PCIe peer access. Keeping UCX inside the GPU worker image removes the need for a host UCX checkout or mounted runtime and prevents mismatches between build headers, linked libraries, and dynamically loaded plugins.