ray.experimental.TensorTransportManager.is_one_sided#

abstract static TensorTransportManager.is_one_sided() bool[source]#

Indicates whether your transport uses one-sided communication where only the receiver initiates the transfer.

One-sided transports: The receiver can directly read the sender’s memory without the sender actively participating. NIXL and CUDA-IPC are examples.

Two-sided transports: Both sender and receiver must actively participate in the transfer. Collective communication libraries like NCCL and GLOO are examples.

This affects how Ray orchestrates the transfer and handles failures. Two-sided transports have extra limitations described in limitations. Ray will not call send_multiple_tensors for one-sided transports; the transfer is expected to happen through just recv_multiple_tensors.

Returns:

True if the backend is one-sided, False otherwise.

Return type:

bool