Hi Folks,
The current GRO code uses an unoptimised version of flow lookup where each flow in the table is iterated over during the flow matching process. For a rte_gro_reassemble_burst in lightweight mode this would not cause much of an impact. But with rte_gro_reassemble which is done with a timeout interval, this causes higher CPU utilisation during throughput tests. The proposal here is to use a Hash based flowtable which could make use of theĀ rte_hash table implementation in DPDK. There could be a hash table for each of the GRO types. The lookup function and the key could be different for each one of the types. If there is a consensus that this could have a better performance impact I would work on an initial patch set. Please let me know your thoughts.
Thanks,
Kumara.