[libfabric-users] Libfabric questions

Niyaz Murshed Niyaz.Murshed at arm.com
Tue Apr 30 08:16:05 PDT 2024


Hello all ,

I am trying to learn libfabric and have some basic questions. Please point me in the right direction.

I am running on ubuntu 22.04 with Mellanox ConnectX 7 NIC cards on an Arm platform (N1).

Question 1:
Is fi_mlx provider only available on x86?

Steps :
Installed UCX (as required in fi_mlx. https://ofiwg.github.io/libfabric/v1.8.0/man/fi_mlx.7.html)

# Library version: 1.18.0
Install libfabric

As per https://www.intel.com/content/www/us/en/developer/articles/technical/mpi-library-2019-over-libfabric.html  this is only available for infiniband devices.
However, in one of the presentations, it shows mlx also supports RoCE (https://ibb.co/bPhm0dp)

Could you please confirm if MLX provider will work on RoCE ? Other than UCX, do we need to install anything else to enable MLX provider?

In my current setup, I only see Verbs provider with doman : mlx
provider: verbs
    fabric: IB-0xfe80000000000000
    domain: mlx5_0
    version: 121.0
    type: FI_EP_MSG
    protocol: FI_PROTO_RDMA_CM_IB_RC

Is Verbs->mlx equivalent to verbs api wrapper over mlx provider?

Question 2:
Is PSM3 only available for intel NIC cards and only on x86 platform?
I have the same installation on x86 and Arm , however,  I see on x86 platform, the intel NICs has the following enabled

provider: psm3

    fabric: TCP-10.118.91.0/24

    domain: eno1

    version: 306.10

    type: FI_EP_RDM

    protocol: FI_PROTO_PSMX3

The same is not present on Arm platform.

Question 3:
I am able to run fabtests , specially focusing on fi_rma_bw .
However, even though I jave verbs(mlx) , this does not get selected. It is always selected as below :
 fi_fabric_attr:
        name: IB-0xfe80000000000000
        prov_name: verbs;ofi_rxd
        prov_version: 121.0
        api_version: 1.20


If I disable rxd in libfabric, then the application errors out at fi_getinfo.

Question 4:

My goal is to run rdma test between 2 application (RoCE).
I have 2 nics  on the server, one on numa0 and another on numa1. I have a loop cable from nic1 to nic2.
How can I make sure that the data is transferred  via the loop cable? Can this be done with fi_rma_bw app?



Regards,
Niyaz

IMPORTANT NOTICE: The contents of this email and any attachments are confidential and may also be privileged. If you are not the intended recipient, please notify the sender immediately and do not disclose the contents to any other person, use it for any purpose, or store or copy the information in any medium. Thank you.
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.openfabrics.org/pipermail/libfabric-users/attachments/20240430/fec9e371/attachment.htm>


More information about the Libfabric-users mailing list