From: [email protected] 
[mailto:[email protected]] On Behalf Of Deepak Rawal
Sent: Friday, June 14, 2013 6:24 PM
To: [email protected]
Subject: [ofw] Current recommended APIs for kernel and user

For user mode API, there are several options as indicated.  However, there is 
NO kernel API available.  It would be very useful if someone could comment on 
what is possible / available for Windows 2012 as well as other (newer and 
older) version of windows.

As stated before, MS embraces NetworkDirect API for user & kernel mode; talk to 
MS about NDKPI consumer interface as it is not publically released.

winOFED / IBAL has a kernel API utilized by the winOFED and Mellanox IPoIB 
drivers.
Since the Mellanox stack and winOFED are derived from the same code base, you 
should talk with Mellanox about their plans for supporting kernel-mode IBAL and 
user-mode IBAL along with user-mode ibverbs support (Linux verbs compat).

It would be greatly appreciated if some guidance on kernel API, even as 
possibility, is indicated by the team (e.g. if any members use kernel RDMA for 
their solution and plan to continue to use it, what plan they recommend)


1)  MS has published preliminary info on NDKPI interface (part of NDIS 
extension) which can be used by providers and consumers, but consumer interface 
is "closed".

2)  There is some alternate information available on MS website that refers to 
kRDMA, but it is not "found" in WDK.

Thanks,
Deepak Rawal

I don't know if anyone responded to this, but in case not...

> We are working on a project that involves both kernel and user mode code
> communicating over Mellanox adapters (RoCE mode) on Windows Server 2012. We do
> need to interoperate with Linux. This is for a commercial datacenter product.
>
>
>
> I see there are multiple APIs that can be used, and am wondering what the OFW
> team is currently recommending for new code?
>
>
>
> It seems like the options include: NDv1, NDv2, IBAL, WinVerbs, libibverbs.
> Compatibility with preexisting Linux code is useful, but having maximum
> performance likely is more important. It seems like NDv1/NDv2 is officially
> supported by Microsoft in user mode, and there currently is no officially
> supported Microsoft kernel RDMA API.

ND is the official API defined by MS.  I believe that there's a kernel ND API 
in Server 2012, but someone from MS will need to confirm.

RoCE support comes directly from Mellanox, so you would need to ask them what 
APIs they will support.

In addition to the APIs you list, there is a userspace version of the Linux 
libibverbs available on windows as part of WinOFED.

- Sean

_______________________________________________
ofw mailing list
[email protected]
http://lists.openfabrics.org/cgi-bin/mailman/listinfo/ofw

Reply via email to