-
Notifications
You must be signed in to change notification settings - Fork 0
/
README
58 lines (42 loc) · 1.63 KB
/
README
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
Last updated [ Thu Jun 9 15:12:52 PDT 2016 ]
kfi - kernel fabric interface
kfi is based, in spirit, on the usermode OFI (Open Fabric Interface) API.
Currently the build is known to be working for
linux-3.12.35, RHEL 6.6
linux-3.10.*, RHEL 7.0
kfi/ base kfi (fi_*) entry points and kfi provider registration.
kfabric.ko is loaded 1st, then provider(s).
include/
header files for providers plus kfi clients.
prov/
ibverbs/ Infiniband kernel verbs provider: (under development)
tests/
getinfo/ fi_getinfo() test
ibverbs/
simple full API test.
mm2 - fi_send() / fi_recv messages between client & server.
Authors:
Stan C. Smith <[email protected]>
Jay E. Sternberg <[email protected]>
Frank Yang <[email protected]>
Chen Zhao <[email protected]>
===============================================================================
Building modules:
$PWD == <...>/kfabric
make
Loading modules: (simple test works if provider works, curent <NULL> provider.
KFI framework: insmod kfabric.ko
KFI null provider: insmod kfi_verbs.ko
KFI test (API): insmod kfi_test_simple.ko
===============================================================================
Points where KFI and OFI APIs differ plus KFI provider implementation notes.
KFI API definition
------------------
1) kfi_getinfo()
removed node, portnum and flags call argument.
info.connreq field not used, info.handle replaces until corrected.
2) kfi_mr_reg(..., uint64_t *dma_address)
dma_address of registered memory returned.
KFI using the ibverbs (OFED/InfiniBand) provider
------------------------------------
Things to do, please see ./TODO file.