Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 7 May 2012 21:55:39 -0700
From:      Juli Mallett <jmallett@FreeBSD.org>
To:        Vijay Singh <vijju.singh@gmail.com>
Cc:        freebsd-net@freebsd.org, Jack Vogel <jfvogel@gmail.com>
Subject:   Re: What does adapter->stats.mpc[] report for ixgbe?
Message-ID:  <CACVs6=_6vsSi547UTSB7fjPK_E-yWkFZ_1Edt79=ym7rGKTQQQ@mail.gmail.com>
In-Reply-To: <CALCNsJREq13sqNoRtH2uuvjc4BVPUe7Kc5o5N2V7u3OR%2BqkxiA@mail.gmail.com>
References:  <CALCNsJSuG2gUyOZu-PkzaFqt0Vf_aymLf3Jc=czCzW=q9E4t8w@mail.gmail.com> <CAFOYbcmQZ0hfWasZDKk9N1v6z_R3KobkURE48M-2Wjyx%2B7j67w@mail.gmail.com> <CACVs6=9kNzB6sDXE1jPKKQCR8LD7h98ME7hFrKqtasUf-RCBwQ@mail.gmail.com> <CAFOYbc=O4w2H8FN8t0pQiJKp2fNMGOtsN5TfZJ3GoX4YnijTcw@mail.gmail.com> <CALCNsJREq13sqNoRtH2uuvjc4BVPUe7Kc5o5N2V7u3OR%2BqkxiA@mail.gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Mon, May 7, 2012 at 9:42 PM, Vijay Singh <vijju.singh@gmail.com> wrote:
>> normal net traffic. But for now in FreeBSD its just one which is divided
>> into 3 parts: TX, RX, and FDIR (flow director).
>
> Jack, does the sw driver control in any way the partitioning of the
> FIFO? I guess enabling 2 hw queues splits the FIFO in half. But
> otherwise does the driver control this in any way?

I don't believe that multiple queues splits the FIFO (Jack can correct
me if I'm wrong.)  This is a small (very small) chunk of low-latency
memory on the NIC itself that is used to store the packets as they
come in off the wire before they are moved to a receive descriptor.
The driver does have a way of partitioning the space between transmit
and receive, look for "PBA" in the drivers.  In some cases if you're
doing mostly-transmit or mostly-receive it can be very helpful to
tweak these values, but in the case where you're running out of
receive FIFO space constantly, it's (in my limited experience) more
likely to be a problem with bandwidth or latency between the NIC and
main memory, causing backpressure within the NIC as it tries to move
packets to receive buffers (which are the ones allocated in main, i.e.
host, memory.)



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?CACVs6=_6vsSi547UTSB7fjPK_E-yWkFZ_1Edt79=ym7rGKTQQQ>