Page MenuHome Accel-ppp

Different CPU usage with 'ipoe' and 'pppoe'
Closed, InvalidPublicBUG

Description

Hi,

I have noticed that if the session is of the 'IPoE' type, then the CPU load is distributed relatively evenly.

irqtop - 2023-11-07 08:54:47 +0100
              CPU0   CPU1   CPU2   CPU3   CPU4   CPU5
  cpuUtil:    37.3    0.2    2.0    7.9   16.9   26.6   total CPU utilization %
     %irq:     0.0    0.0    0.0    0.0    0.0    0.0   hardware IRQ CPU util%
    %sirq:    37.3    0.0    1.8    7.7   16.7   26.6   software IRQ CPU util%
 irqTotal:   59160     37  21402  26673  36761  49051   total hardware IRQs
i     131:       .      .      .      .      .      0   IR-PCI-MSI 376832-edge      ahci[0000:00:17.0]
i     138:   12870      .      .      .      .      .   IR-PCI-MSI 524288-edge      eth2-TxRx-0
i     139:       .     13      .      .      .      .   IR-PCI-MSI 524289-edge      eth2-TxRx-1
i     140:       .      .      .      .   4171      .   IR-PCI-MSI 524290-edge      eth2-TxRx-2
i     141:       .      .      .      .      .  10870   IR-PCI-MSI 524291-edge      eth2-TxRx-3
i     142:       .      .   4084      .      .      .   IR-PCI-MSI 524292-edge      eth2-TxRx-4
i     143:       .      .      .   4246      .      .   IR-PCI-MSI 524293-edge      eth2-TxRx-5
i     144:       0      .      .      .      .      .   IR-PCI-MSI 524294-edge      eth2
i     145:       .      .      .      .  24911      .   IR-PCI-MSI 526336-edge      eth3-TxRx-0
i     146:       .      .      .      .      .   2407   IR-PCI-MSI 526337-edge      eth3-TxRx-1
i     147:       .      .   9637      .      .      .   IR-PCI-MSI 526338-edge      eth3-TxRx-2
i     148:       .      .      .  14548      .      .   IR-PCI-MSI 526339-edge      eth3-TxRx-3
i     149:   16277      .      .      .      .      .   IR-PCI-MSI 526340-edge      eth3-TxRx-4
i     150:       .      .      .      .      .  12825   IR-PCI-MSI 526341-edge      eth3-TxRx-5
i     151:       .      0      .      .      .      .   IR-PCI-MSI 526342-edge      eth3
i     NMI:       0      0      0      0      0      0    Non-maskable interrupts
i     LOC:   30011     21   7680   7878   7678  22947    Local timer interrupts
i     PMI:       0      0      0      0      0      0    Performance monitoring interrupts
i     RES:       0      1      0      0      0      0    Rescheduling interrupts
i     CAL:       0      0      0      0      0      0    Function call interrupts
i     TLB:       0      0      0      0      0      0    TLB shootdowns
s   TIMER:      56     17     19     33     52     68
s  NET_TX:   24621      0   6984   7003   6625  19679
s  NET_RX:   28047     13  13503  18542  28859  25139
s   BLOCK:       0      0      0      0      0      0
s TASKLET:       0      0      0      0      0      0
s   SCHED:      20     13     19     46     68     73
s     RCU:      17      6      8     18     15     12

But when session is of the 'PPPoE' type, then:

- irqtop - 2023-11-07 09:03:07 +0100
              CPU0   CPU1   CPU2   CPU3   CPU4   CPU5
  cpuUtil:     0.4    0.2   81.1    0.0   14.6    0.0   total CPU utilization %
     %irq:     0.0    0.0    0.0    0.0    0.0    0.0   hardware IRQ CPU util%
    %sirq:     0.0    0.0   81.1    0.0   14.4    0.0   software IRQ CPU util%
 irqTotal:      43     57  92309     64  25632     40   total hardware IRQs
i     131:       .      .      .      .      .      0   IR-PCI-MSI 376832-edge      ahci[0000:00:17.0]
i     138:      34      .      .      .      .      .   IR-PCI-MSI 524288-edge      eth2-TxRx-0
i     139:       .     35      .      .      .      .   IR-PCI-MSI 524289-edge      eth2-TxRx-1
i     140:       .      .      .      .     38      .   IR-PCI-MSI 524290-edge      eth2-TxRx-2
i     141:       .      .      .      .      .     33   IR-PCI-MSI 524291-edge      eth2-TxRx-3
i     142:       .      .  12613      .      .      .   IR-PCI-MSI 524292-edge      eth2-TxRx-4
i     143:       .      .      .     36      .      .   IR-PCI-MSI 524293-edge      eth2-TxRx-5
i     144:       0      .      .      .      .      .   IR-PCI-MSI 524294-edge      eth2
i     145:       .      .      .      .  25437      .   IR-PCI-MSI 526336-edge      eth3-TxRx-0
i     146:       .      .      .      .      .      0   IR-PCI-MSI 526337-edge      eth3-TxRx-1
i     147:       .      .  11434      .      .      .   IR-PCI-MSI 526338-edge      eth3-TxRx-2
i     148:       .      .      .      0      .      .   IR-PCI-MSI 526339-edge      eth3-TxRx-3
i     149:       0      .      .      .      .      .   IR-PCI-MSI 526340-edge      eth3-TxRx-4
i     150:       .      .      .      .      .      0   IR-PCI-MSI 526341-edge      eth3-TxRx-5
i     151:       .      0      .      .      .      .   IR-PCI-MSI 526342-edge      eth3
i     NMI:       0      0      0      0      0      0    Non-maskable interrupts
i     LOC:       8     21  68261     28    154      5    Local timer interrupts
i     PMI:       0      0      0      0      0      0    Performance monitoring interrupts
i     RES:       0      0      0      0      1      0    Rescheduling interrupts
i     CAL:       0      0      0      0      0      0    Function call interrupts
s   TIMER:       2     10    136     16     44      4
s  NET_TX:       0      0  43613      0      0      0
s  NET_RX:      34     35  22461     36  49956     34
s   BLOCK:       0      0      0      0      0      0
s TASKLET:       0      0      0      0      0      0
s   SCHED:       3     12     83     18     58      3
s     RCU:       4      9     16      9     13      2

What causes performance issues with a larger number of clients (one CPU becomes congested and network transfers significantly decrease).

Details

Protocol
General
Version
9669bcb99adce771878fb269a1a6a4b641e891b9

Event Timeline

This question is not related to accel, traffic forwarding is done by kernel, not by accel-ppp so please contact netdev (https://lore.kernel.org/netdev/ ) if you want to discuss it

Only difference is type of accel session. ipoe vs pppoe. So this is not related to accel?

this is not related to accel, because accel-ppp is only control-plane for pppoe sessions so slow performance of pppoe is related to kernel, not to accel-ppp

Okey, so in that case, how do you deal with it?