1fi_mrail(7) Libfabric v1.7.0 fi_mrail(7)
2
3
4
6 fi_mrail - The Multi-Rail Utility Provider
7
9 The mrail provider (ofi_mrail) is an utility provider that layers over
10 an underlying provider to enable the use of multiple network ports
11 (rails). This increases the total available bandwidth of an underlying
12 proivder. The current status of mrail provider is experimental - not
13 all libfabric features are supported and performance is not guaranteed.
14
16 Requirements for underlying provider
17 mrail provider requires the underlying provider to support the follow‐
18 ing capabilities / modes:
19
20 · Buffered receive (FI_BUFFERED_RECV)
21
22 · FI_SOURCE
23
24 · FI_AV_TABLE
25
26 Requirements for applications
27 Applications need to: * Support FI_MR_RAW MR mode bit to make use of
28 FI_RMA capability. * Set FI_OFI_MRAIL_ADDR_STRC env variable (see RUN‐
29 TIME PARAMETERS section below).
30
32 Endpoint types
33 The provider supports only FI_EP_RDM.
34
35 Endpoint capabilities
36 The following data transfer interface is supported: FI_MSG,
37 FI_TAGGED, FI_RMA.
38
39 # LIMITATIONS
40 Limitations of the underlying provider may show up as that of
41 mrail provider.
42 mrail provider doesn't allow pass-through of any mode bits to the un‐
43 derlying provider.
44
45 Unsupported features
46 The following are the major libfabric features that are not supported.
47 Any other feature not listed in "Supported features" can be assumed as
48 unsupported.
49
50 · FI_ATOMIC
51
52 · Scalable endpoints
53
54 · Shared contexts
55
56 · FABRIC_DIRECT
57
58 · Multicast
59
60 · Triggered operations
61
63 For messages (FI_MSG, FI_TAGGED), the provider sends one message per
64 rail in a round-robin manner. Ordering is guaranteed through the use
65 of sequence numbers. For RMA, the data is striped equally across all
66 rails.
67
69 The ofi_mrail provider checks for the following environment variables.
70
71 FI_OFI_MRAIL_ADDR_STRC
72 Comma delimited list of individual rail addresses in FI_ADDR_STR
73 format.
74
76 fabric(7), fi_provider(7), fi_getinfo(3)
77
79 OpenFabrics.
80
81
82
83Libfabric Programmer's Manual 2018-12-27 fi_mrail(7)