• Eelco Chaudron's avatar
    net: openvswitch: reorder masks array based on usage · eac87c41
    Eelco Chaudron authored
    This patch reorders the masks array every 4 seconds based on their
    usage count. This greatly reduces the masks per packet hit, and
    hence the overall performance. Especially in the OVS/OVN case for
    OpenShift.
    
    Here are some results from the OVS/OVN OpenShift test, which use
    8 pods, each pod having 512 uperf connections, each connection
    sends a 64-byte request and gets a 1024-byte response (TCP).
    All uperf clients are on 1 worker node while all uperf servers are
    on the other worker node.
    
    Kernel without this patch     :  7.71 Gbps
    Kernel with this patch applied: 14.52 Gbps
    
    We also run some tests to verify the rebalance activity does not
    lower the flow insertion rate, which does not.
    Signed-off-by: default avatarEelco Chaudron <echaudro@redhat.com>
    Tested-by: default avatarAndrew Theurer <atheurer@redhat.com>
    Reviewed-by: default avatarPaolo Abeni <pabeni@redhat.com>
    Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
    eac87c41
datapath.c 63.2 KB