• Raj Victor's avatar
    ice: Support 5 layer topology · 91427e6d
    Raj Victor authored
    There is a performance issue when the number of VSIs are not multiple
    of 8. This is caused due to the max children limitation per node(8) in
    9 layer topology. The BW credits are shared evenly among the children
    by default. Assume one node has 8 children and the other has 1.
    The parent of these nodes share the BW credit equally among them.
    Apparently this causes a problem for the first node which has 8 children.
    The 9th VM get more BW credits than the first 8 VMs.
    
    Example:
    
    1) With 8 VM's:
    for x in 0 1 2 3 4 5 6 7;
    do taskset -c ${x} netperf -P0 -H 172.68.169.125 &  sleep .1 ; done
    
    tx_queue_0_packets: 23283027
    tx_queue_1_packets: 23292289
    tx_queue_2_packets: 23276136
    tx_queue_3_packets: 23279828
    tx_queue_4_packets: 23279828
    tx_queue_5_packets: 23279333
    tx_queue_6_packets: 23277745
    tx_queue_7_packets: 23279950
    tx_queue_8_packets: 0
    
    2) With 9 VM's:
    for x in 0 1 2 3 4 5 6 7 8;
    do taskset -c ${x} netperf -P0 -H 172.68.169.125 &  sleep .1 ; done
    
    tx_queue_0_packets: 24163396
    tx_queue_1_packets: 24164623
    tx_queue_2_packets: 24163188
    tx_queue_3_packets: 24163701
    tx_queue_4_packets: 24163683
    tx_queue_5_packets: 24164668
    tx_queue_6_packets: 23327200
    tx_queue_7_packets: 24163853
    tx_queue_8_packets: 91101417
    
    So on average queue 8 statistics show that 3.7 times more packets were
    send there than to the other queues.
    
    The FW starting with version 3.20, has increased the max number of
    children per node by reducing the number of layers from 9 to 5. Reflect
    this on driver side.
    Signed-off-by: default avatarRaj Victor <victor.raj@intel.com>
    Co-developed-by: default avatarMichal Wilczynski <michal.wilczynski@intel.com>
    Signed-off-by: default avatarMichal Wilczynski <michal.wilczynski@intel.com>
    Co-developed-by: default avatarMateusz Polchlopek <mateusz.polchlopek@intel.com>
    Signed-off-by: default avatarMateusz Polchlopek <mateusz.polchlopek@intel.com>
    Tested-by: default avatarPucha Himasekhar Reddy <himasekharx.reddy.pucha@intel.com>
    Signed-off-by: default avatarTony Nguyen <anthony.l.nguyen@intel.com>
    91427e6d
ice_common.c 166 KB