![]() |
![]()
| ![]() |
![]()
NAMEfi_mrail - The Multi-Rail Utility Provider OVERVIEWThe mrail provider (ofi_mrail) is an utility provider that layers over an underlying provider to enable the use of multiple network ports (rails). This increases the total available bandwidth of an underlying provider. The current status of mrail provider is experimental - not all libfabric features are supported and performance is not guaranteed. REQUIREMENTSRequirements for underlying providermrail provider requires the underlying provider to support the following capabilities / modes:
Requirements for applicationsApplications need to: * Support FI_MR_RAW MR mode bit to make use of FI_RMA capability. * Set FI_OFI_MRAIL_ADDR env variable (see RUNTIME PARAMETERS section below). SUPPORTED FEATURES
Unsupported featuresThe following are the major libfabric features that are not supported. Any other feature not listed in “Supported features” can be assumed as unsupported.
FUNCTIONALITY OVERVIEWFor messages (FI_MSG, FI_TAGGED), the provider uses different policies to send messages over one or more rails based on message size (See FI_OFI_MRIAL_CONFIG in the RUNTIME PARAMETERS section). Ordering is guaranteed through the use of sequence numbers. For RMA, the data is striped equally across all rails. RUNTIME PARAMETERSThe ofi_mrail provider checks for the following environment variables.
SEE ALSOfabric(7), fi_provider(7), fi_getinfo(3) AUTHORSOpenFabrics.
|