• Tariq Toukan's avatar
    net/mlx5e: RX, Restrict bulk size for small Striding RQs · 4b5fba4a
    Tariq Toukan authored
    In RQs of type multi-packet WQE (Striding RQ), each WQE is relatively
    large (typically 256KB) but their number is relatively small (8 in
    default).
    
    Re-mapping the descriptors' buffers before re-posting them is done via
    UMR (User-Mode Memory Registration) operations.
    
    On the one hand, posting UMR WQEs in bulks reduces communication overhead
    with the HW and better utilizes its processing units.
    On the other hand, delaying the WQE repost operations for a small RQ
    (say, of 4 WQEs) might drastically hit its performance, causing packet
    drops due to no receive buffer, for high or bursty incoming packets rate.
    
    Here we restrict the bulk size for too small RQs. Effectively, with the current
    constants, RQ of size 4 (minimum allowed) would have no bulking, while larger
    RQs will continue working with bulks of 2.
    Signed-off-by: default avatarTariq Toukan <tariqt@nvidia.com>
    Signed-off-by: default avatarSaeed Mahameed <saeedm@nvidia.com>
    4b5fba4a
en.h 39 KB