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