Sean Hefty Intel Corporation Scalable Fabric Interfaces Q What is implied by incorporating interface sets under a single framework Objects exist that are usable between the interfaces Isolated interfaces turn the framework into a complex ID: 498932
Download Presentation The PPT/PDF document "IB Verbs Compatibility" is the property of its rightful owner. Permission is granted to download and print the materials on this web site for personal, non-commercial use only, and to display it on your personal computer provided you do not modify the materials and that you retain all copyright notices contained in the materials. By downloading content from our website, you accept the terms of this agreement.
Slide1
IB Verbs Compatibility
Sean Hefty
Intel CorporationSlide2
(Scalable) Fabric Interfaces
Q: What
is implied by incorporating interface sets under a single framework
?Objects exist that are usable between the interfacesIsolated interfaces turn the framework into a complex dlopenInterfaces are composableMay be used together
www.openfabrics.org
2
Fabric Interfaces
Message Queue
ControlInterface
RDMA
Atomics
Active Messaging
Tag Matching
Collective Operations
CM ServicesSlide3
Verbs Compatibility
Verbs API and data structures supportable through a compatibility mode
Verbs objects may be converted to FI objects
ibv_qp fid_ep, ibv_cq fid_ec
FI objects do not necessarily convert to verbsProvide access to native FI objectsExpose fields through
ibverbs data structuresAllows use of FI APIsApplications migrate to FI to use new features
www.openfabrics.org
3Slide4
Migrating
Providers
from Verbs to FI
libfabric
CM Services
libibverbs
FI
RDMA CM
Verbs Provider
Message Queue
RDMA
Verbs
Verbs Provider
ibverbs abstraction layer
www.openfabrics.org
4Slide5
Migrating Apps
from Verbs to
FI
Expose ‘verbs’ interfaces directly from FIUse macros or static inline functions to convert ‘libibverbs’ exported calls to FI callsSame performance as using libibverbs directlyRedefine verb data structuresExpose native FI definitions
www.openfabrics.org
5Slide6
Verbs Compatibility
Define
fi_ops_ibv
Includes prototypes for libibverbs APIsibv_get_device_list() – inline callFirst call made by any appMaps to fi_open(“ibv_devices” …)Redefine struct
ibv_* for use with libfabricibv_device
, ibv_context, ibv_pd, ibv_mr
, ibv_srq, ibv_qp, ibv_cq,ibv_ah, ibv_comp_channelHide internal fields, reference FI objects
www.openfabrics.org6Slide7
Compatibility
RDMA CM handled in a similar fashion
More challenging, not a single top-level entry point
Need to determine how to handle header filesAvoid conflicting with libibverbs and librdmacm headersCould require source change to use new headerwww.openfabrics.org
7