Thread (2 messages) flat view 2 messages, 2 authors, 2013-08-11

mlx4 interrupt coalescing not important for small packets?

From: Shawn Bohrer <hidden>
Date: 2013-08-09 17:06:53

I was looking at the adaptive interrupt coalescing algorithm for
mlx4_en which contains the following snippet:

/* Apply auto-moderation only when packet rate
 * exceeds a rate that it matters */
if (rate > (MLX4_EN_RX_RATE_THRESH / priv->rx_ring_num) &&
    avg_pkt_size > MLX4_EN_AVG_PKT_SMALL) {
        if (rate < priv->pkt_rate_low)
                moder_time = priv->rx_usecs_low;
        else if (rate > priv->pkt_rate_high)
                moder_time = priv->rx_usecs_high;
        else
                moder_time = (rate - priv->pkt_rate_low) *
                        (priv->rx_usecs_high - priv->rx_usecs_low) /
                        (priv->pkt_rate_high - priv->pkt_rate_low) +
                        priv->rx_usecs_low;
} else {
        moder_time = priv->rx_usecs_low;
}

In this case MLX4_EN_AVG_PKT_SMALL is 256 bytes.  Can someone explain
to me why interrupt coalescing is not important for small packets
regardless of the incoming packet rate?

Thanks,
Shawn
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help