Hello to everyone!
This is my first post, so I will appreciate any feedback on the post itself.
So first about the environment. I am using a SuperMicro C2758 box, which has SuperMicro AOC-SGP-I4 network card installed (two of them). The card itself is intel i-350 series chipset based.
Software wise I am using pfsense 2.4.2-RELEASE-p1, which is based on FreeBSD 11.1-RELEASE-p6. This version of FreeBSD is using netmap, which has taken over my igb driver.
Now, the driver`s man page tells me, that it is capable of 4096 RX and TX descriptors tops. The 998 page Intel i-350 chipset documentation says, that both, the RX and TX ring sizes are 32K, since the address part of the ring buffer is 16 bits. This all together tells me, that my card should be capable of the 4096 RX and TX descriptors. Also, netmap itself supports the 4096 descriptor rings. The reality is actually a bit different. I`ve tried to set the hw.igb.rxd and hw.igb.txd kernel parameters with the loader.conf.local file, which gives the following output in dmesg:
I`ve also tried to set the netmap dev.netmap.buf_num kernel parameter with the help of the same file to no avail.
So my question is: Since raising the descriptor count would better the system`s performance at the cost of extra memory, what would be the way to raise this? If not possible, then why?
Thank you in advance
This is my first post, so I will appreciate any feedback on the post itself.
So first about the environment. I am using a SuperMicro C2758 box, which has SuperMicro AOC-SGP-I4 network card installed (two of them). The card itself is intel i-350 series chipset based.
Software wise I am using pfsense 2.4.2-RELEASE-p1, which is based on FreeBSD 11.1-RELEASE-p6. This version of FreeBSD is using netmap, which has taken over my igb driver.
Now, the driver`s man page tells me, that it is capable of 4096 RX and TX descriptors tops. The 998 page Intel i-350 chipset documentation says, that both, the RX and TX ring sizes are 32K, since the address part of the ring buffer is 16 bits. This all together tells me, that my card should be capable of the 4096 RX and TX descriptors. Also, netmap itself supports the 4096 descriptor rings. The reality is actually a bit different. I`ve tried to set the hw.igb.rxd and hw.igb.txd kernel parameters with the loader.conf.local file, which gives the following output in dmesg:
Code:
igb0: Using MSIX interrupts with 9 vectors
igb0: Using 1024 TX descriptors instead of 8192!
igb0: Using 1024 RX descriptors instead of 8192!
I`ve also tried to set the netmap dev.netmap.buf_num kernel parameter with the help of the same file to no avail.
So my question is: Since raising the descriptor count would better the system`s performance at the cost of extra memory, what would be the way to raise this? If not possible, then why?
Thank you in advance