MLX5DV(7) Miscellaneous Information Manual MLX5DV(7)
NAME
mlx5dv - Direct verbs for mlx5 devices
This is low level access to mlx5 devices to perform data path opera-
tions, without general branching performed by ibv_post_send(3).
DESCRIPTION
The libibverbs API is an abstract one. It is agnostic to any underlying
provider specific implementation. While this abstraction has the advan-
tage of user applications portability it has a performance penalty. For
some applications optimizing performance is more important than porta-
bility.
The mlx5 direct verbs API is intended for such applications. It ex-
poses mlx5 specific low level data path (send/receive/completion) oper-
ations, allowing the application to bypass the libibverbs data path
API.
This interface consists from one hardware specific header file with
relevant inline functions and conversion logic from ibverbs structures
to mlx5 specific structures.
The direct include of mlx5dv.h together with linkage to mlx5 library
will allow usage of this new interface.
Once an application uses the direct flow the locking scheme is fully
managed by itself. There is an expectation that no mixed flows in the
data path for both direct/non-direct access will be by same applica-
tion.
NOTES
All Mellanox NIC devices starting from Connect-IB (Connect-IB, Con-
nectX-4, ConnectX-4Lx, ConnectX-5, ...) 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.
SEE ALSO
ibv_post_send(3), verbs(7), mlx5dv_is_supported(3)
AUTHORS
Leon Romanovsky <leonro@mellanox.com>
1.0.0 2017-02-02 MLX5DV(7)
Generated by dwww version 1.14 on Sat Jun 13 12:37:57 CEST 2026.