luigirizzo / netmap

Automatically exported from code.google.com/p/netmap
BSD 2-Clause "Simplified" License
1.85k stars 534 forks source link

Performance Tuning #857

Open sinainnet opened 2 years ago

sinainnet commented 2 years ago

Hi,

I am currently working on tuning ice and i40e cards with netmap with three operation modes, TX, RX, and forwarding. My machine is an HP gen9 machine with a dual-NUMA Xeon E5 processor E5-2699 with hyperthreading off. However, I cannot achieve the 14 Mpps with one thread and one CPU core its speed is about 2.2 GHz without turbo boost. I wonder what could be the problem. Indeed, I need a general guideline to go through to check if all system configurations are at their best. I am using netmap blocking API with ICE driver.

I have also another question about the best possible performance that can be gained by netmap in comparison to dpdk.

I will be glad if anyone can help me.

jhk098 commented 2 years ago

Part of the checklist:

sinainnet commented 2 years ago

I have tested these parameters. It seems that autoneg cannot be turned off! However, I have encountered another problem. It seems that the netmap has not recognized the ice card as a native one. Thus, it creates an emulated network_adapter object with the netmap_generic_adapter! I wonder why it does such a thing?!

jhk098 commented 2 years ago

It means you have not loaded ice_netmap.ko, as built by the netmap build process. With lsmod | grep netmap you should see netmap.ko and the driver modules (e.g. ixgbe_netmap.ko, ice_netmap.ko that depend on netmap.ko).

giuseppelettieri commented 2 years ago

The original ice patch was broken and it didn't actually enable native mode. May you please try again with the latest master?