All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH rdma-core 0/7] Add mlx5 direct verbs
@ 2017-01-26 15:56 Yishai Hadas
       [not found] ` <1485446182-5109-1-git-send-email-yishaih-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
  0 siblings, 1 reply; 23+ messages in thread
From: Yishai Hadas @ 2017-01-26 15:56 UTC (permalink / raw)
  To: dledford-H+wXaHxf7aLQT0dZR+AlfA
  Cc: linux-rdma-u79uwXL29TY76Z2rM5mHXA,
	yishaih-VPRAkNaXOzVWk0Htik3J/w, leonro-VPRAkNaXOzVWk0Htik3J/w,
	majd-VPRAkNaXOzVWk0Htik3J/w

This patchset from Leon adds direct access to mlx5 devices.

The libibverbs API is an abstract API. It is agnostic to any underlying
provider specific implementation. While this abstraction has the advantage of
user applications portability it has a performance penalty. For some
applications optimizing performance is more important than portability.

The mlx5 direct verbs API introduced in this patchset is intended for such
applications. It exposes mlx5 specific low level data path
(send/receive/completion) operations, allowing the application to bypass the
libibverbs data path API.

The proposed interface consists from small number of hardware specific headers
with relevant inline functions and conversion logic from ibverbs structures to
mlx5 related structures.

New headers are going to be installed to the /usr/include/infiniband/ folder in
such way that it will allow future extension and coexistence for other vendors.

* /usr/inlcude/infiniband/mlx5/dv.h               - shared code
* /usr/inlcude/infiniband/mlx5/dv-cqe.h           - CQE related functions
                                                    (general implementation)
* /usr/inlcude/infiniband/mlx5/dv-wqe.h           - WQE related functions
                                                    (general and SSE3 implementations)

The direct include of dv.h together with linkage to mlx5 library will
allow usage of this new interface.

Note: all Mellanox NIC devices starting from Connect-IB (Connect-IB,
ConnectX-4, ConnectX-4Lx, ConnectX-5 and more to come in the future)
implement the mlx5 API, thus using the mlx5 direct verbs does not limit
the applications to a single NIC HW device thus keeping some level of
portability.

Pull request was sent:
https://github.com/linux-rdma/rdma-core/pull/63

Yishai

Leon Romanovsky (7):
  mlx5: Add mlx5 direct verbs files
  mlx5: Add CQE fields
  mlx5: Add WQE segments implementation
  mlx5: Use macro for CQE version 1
  mlx5: Convert to use predefined get CQE opcodes
  mlx5: Unify exported and internal CQE format
  mlx5: Export mlx5 direct verbs interface

 buildlib/provider.map                 |  13 +-
 providers/mlx5/CMakeLists.txt         |   2 +
 providers/mlx5/cq.c                   | 120 +++----------
 providers/mlx5/include/CMakeLists.txt |   5 +
 providers/mlx5/include/dv-cqe.h       | 156 +++++++++++++++++
 providers/mlx5/include/dv-wqe.h       | 315 ++++++++++++++++++++++++++++++++++
 providers/mlx5/include/dv.h           | 181 +++++++++++++++++++
 providers/mlx5/mlx5.c                 | 111 +++++++++++-
 providers/mlx5/mlx5.h                 |  62 +------
 providers/mlx5/qp.c                   |   2 +-
 providers/mlx5/wqe.h                  |  97 +----------
 11 files changed, 806 insertions(+), 258 deletions(-)
 create mode 100644 providers/mlx5/include/CMakeLists.txt
 create mode 100644 providers/mlx5/include/dv-cqe.h
 create mode 100644 providers/mlx5/include/dv-wqe.h
 create mode 100644 providers/mlx5/include/dv.h

-- 
1.8.3.1

--
To unsubscribe from this list: send the line "unsubscribe linux-rdma" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

^ permalink raw reply	[flat|nested] 23+ messages in thread

end of thread, other threads:[~2017-02-08 18:45 UTC | newest]

Thread overview: 23+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2017-01-26 15:56 [PATCH rdma-core 0/7] Add mlx5 direct verbs Yishai Hadas
     [not found] ` <1485446182-5109-1-git-send-email-yishaih-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2017-01-26 15:56   ` [PATCH rdma-core 1/7] mlx5: Add mlx5 direct verbs files Yishai Hadas
     [not found]     ` <1485446182-5109-2-git-send-email-yishaih-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2017-01-26 17:27       ` Jason Gunthorpe
2017-01-26 15:56   ` [PATCH rdma-core 2/7] mlx5: Add CQE fields Yishai Hadas
2017-01-26 15:56   ` [PATCH rdma-core 3/7] mlx5: Add WQE segments implementation Yishai Hadas
2017-01-26 15:56   ` [PATCH rdma-core 4/7] mlx5: Use macro for CQE version 1 Yishai Hadas
2017-01-26 15:56   ` [PATCH rdma-core 5/7] mlx5: Convert to use predefined get CQE opcodes Yishai Hadas
2017-01-26 15:56   ` [PATCH rdma-core 6/7] mlx5: Unify exported and internal CQE format Yishai Hadas
2017-01-26 15:56   ` [PATCH rdma-core 7/7] mlx5: Export mlx5 direct verbs interface Yishai Hadas
     [not found]     ` <1485446182-5109-8-git-send-email-yishaih-VPRAkNaXOzVWk0Htik3J/w@public.gmane.org>
2017-01-26 17:30       ` Jason Gunthorpe
     [not found]         ` <20170126173005.GD16562-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-02-03 16:04           ` Christoph Hellwig
     [not found]             ` <20170203160419.GA28953-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>
2017-02-03 16:48               ` Jason Gunthorpe
2017-01-26 17:25   ` [PATCH rdma-core 0/7] Add mlx5 direct verbs Jason Gunthorpe
     [not found]     ` <20170126172511.GB16562-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-01-26 21:54       ` Yishai Hadas
     [not found]         ` <ac21fe37-d617-e5a8-cd67-e8fdfbd69d55-LDSdmyG8hGV8YrgS2mwiifqBs+8SCbDb@public.gmane.org>
2017-01-26 22:02           ` Jason Gunthorpe
2017-02-01 15:56   ` Christoph Lameter
     [not found]     ` <alpine.DEB.2.20.1702010956080.12203-wcBtFHqTun5QOdAKl3ChDw@public.gmane.org>
2017-02-01 16:17       ` Leon Romanovsky
2017-02-02  8:52   ` Sagi Grimberg
     [not found]     ` <782c31cb-e247-1094-955f-2766f9c66cbd-NQWnxTmZq1alnMjI0IkVqw@public.gmane.org>
2017-02-02 13:15       ` Yishai Hadas
2017-02-06 10:56   ` Amrani, Ram
     [not found]     ` <SN1PR07MB22070381E7566FA819E5F8F8F8400-mikhvbZlbf8TSoR2DauN2+FPX92sqiQdvxpqHgZTriW3zl9H0oFU5g@public.gmane.org>
2017-02-06 11:46       ` Leon Romanovsky
     [not found]         ` <20170206114609.GK6005-U/DQcQFIOTAAJjI8aNfphQ@public.gmane.org>
2017-02-06 16:39           ` Jason Gunthorpe
     [not found]             ` <20170206163937.GB14714-ePGOBjL8dl3ta4EC/59zMFaTQe2KTcn/@public.gmane.org>
2017-02-08 18:45               ` Sagi Grimberg

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.