it-swarm-ja.tech

レート制御ネットワーキングを使用する場合の高いsoftirq

元々これをServerFaultに投稿する予定でしたが、これがより良い場所かもしれないと思いました。この質問を投稿するのにより良い場所があると思われる場合はお知らせください。

Java NIOのAPI(Linuxではepoll)として)を介してネットワーキングを実行するユーザー空間アプリケーションがあります。デモと診断のために、ラインテストユーティリティを使用しています。 iperfと同じです。

環境とテストの実行方法に関する情報。

  • 今日更新されたUbuntu 16.04デスクトップ(4.4.0-34-generic)
  • irqbalanceはオフです
  • Intel X504T1 10GbE(ixgbe)レシーバー<-> Solarflare 10GbE(sfc)センダー
  • 10 000を使用TCPソケット
  • ソケットはOSのデフォルト設定を使用します
  • ユーザースペースの読み取りバッファは32KBです
  • 読み取りは40Hz以下で行われます

ラインテストは、TCPソケットを介して可能な限り多くの情報を送信する単一のクライアントで構成されます。

  • ソケットごとの各read()は、1 hzあたり最大98KBを取得するために複数回呼び出すことができます(上限に達するには、32KBのバッファーを3回読み取る必要があります)
  • つまり、40Hzと98KBの上限では、read()は接続ごとに1秒あたり最大120回呼び出すことができます。合計3,840KBを読み取ります。
  • ラインテスターは、read()が1秒間に合計約110,000回呼び出されることを示しています。

ラインテストでは、約8%を使用して10GbEアダプターを完全に飽和させますsoftirq

top - 22:04:29 up 51 min,  1 user,  load average: 1.31, 1.02, 0.66
Tasks: 258 total,   1 running, 257 sleeping,   0 stopped,   0 zombie
%Cpu(s):  2.2 us,  3.6 sy,  0.0 ni, 85.6 id,  1.1 wa,  0.0 hi,  7.4 si,  0.0 st
KiB Mem : 16378912 total, 12909832 free,  2383088 used,  1085992 buff/cache
KiB Swap: 16721916 total, 16721916 free,        0 used. 13746736 avail Mem 

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND     
 4922 jon       20   0 1553556 492552 127160 S 125.0  3.0   0:54.61 firefox     
 5099 jon       20   0 7212040 218396  16872 S  75.0  1.3   2:59.88 Java        
 3194 root      20   0  722144 163812 134052 S  18.8  1.0   1:25.63 Xorg        
 4149 jon       20   0 1588648 147848  75344 S   6.2  0.9   0:28.63 compiz      
 4197 jon       20   0  544660  40600  26804 S   6.2  0.2   0:01.20 indicator-+ 
 5186 jon       20   0   41948   3696   3084 R   6.2  0.0   0:00.01 top         
    1 root      20   0  119744   5884   3964 S   0.0  0.0   0:00.84 systemd     
    2 root      20   0       0      0      0 S   0.0  0.0   0:00.00 kthreadd    
    3 root      20   0       0      0      0 S   0.0  0.0   5:01.01 ksoftirqd/0 
    5 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 kworker/0:+ 
    7 root      20   0       0      0      0 S   0.0  0.0   0:01.06 rcu_sched   
    8 root      20   0       0      0      0 S   0.0  0.0   0:00.00 rcu_bh      
    9 root      rt   0       0      0      0 S   0.0  0.0   0:00.00 migration/0 
   10 root      rt   0       0      0      0 S   0.0  0.0   0:00.04 watchdog/0  
   11 root      rt   0       0      0      0 S   0.0  0.0   0:00.01 watchdog/1  
   12 root      rt   0       0      0      0 S   0.0  0.0   0:00.00 migration/1 
   13 root      20   0       0      0      0 S   0.0  0.0   0:08.16 ksoftirqd/1

cat /proc/interrupts
           CPU0       CPU1       CPU2       CPU3       CPU4       CPU5       CPU6       CPU7       
  0:         17          0          0          0          0          0          0          0  IR-IO-APIC   2-Edge      timer
  1:          0          1          0          0          1          0          0          0  IR-IO-APIC   1-Edge      i8042
  5:          0          0          0          0          0          0          0          0  IR-IO-APIC   5-Edge      parport0
  8:          0          0          0          0          0          1          0          0  IR-IO-APIC   8-Edge      rtc0
  9:          0          0          0          0          0          0          0          0  IR-IO-APIC   9-fasteoi   acpi
 12:          2          0          1          0          1          0          0          0  IR-IO-APIC  12-Edge      i8042
 16:         50          6          2          6         10          0          0          3  IR-IO-APIC  16-fasteoi   ehci_hcd:usb1
 17:       1138         35         14         24        227         25         35         24  IR-IO-APIC  17-fasteoi   snd_hda_intel
 19:          0          1          0          0          0          1          0          0  IR-IO-APIC  19-fasteoi   firewire_ohci
 23:         11          4         10          1          7          0          0          0  IR-IO-APIC  23-fasteoi   ehci_hcd:usb2
 24:          0          0          0          0          0          0          0          0  DMAR-MSI   0-Edge      dmar0
 27:       4571       1431       1142        812       1286       1442        985        730  IR-PCI-MSI 327680-Edge      xhci_hcd
 28:      26230       3078       1744       1325       6297       2715       1703       1258  IR-PCI-MSI 512000-Edge      0000:00:1f.2
 29:        754         43         28         30        215        176        129         76  IR-PCI-MSI 2097152-Edge      eth0-rx-0
 30:          0          0          0          0          0          0          0          0  IR-PCI-MSI 2097153-Edge      eth0-tx-0
 31:          0          0          0          0          1          0          0          0  IR-PCI-MSI 2097154-Edge      eth0
 32:        757         64         28         33        205        169        129         66  IR-PCI-MSI 2621440-Edge      eth1-rx-0
 33:          0          0          0          0          0          0          0          0  IR-PCI-MSI 2621441-Edge      eth1-tx-0
 34:          1          0          0          0          0          0          0          0  IR-PCI-MSI 2621442-Edge      eth1
 35:    1042128     233608      58916      16705    1612687    1484813    1121118     630363  IR-PCI-MSI 1048576-Edge      enp2s0-TxRx-0
 36:     858271     736510     372134     165262    1704892    1127381    1265752     767377  IR-PCI-MSI 1048577-Edge      enp2s0-TxRx-1
 37:     816359     711664     426719     192686    1475309    1307882     807216     712562  IR-PCI-MSI 1048578-Edge      enp2s0-TxRx-2
 38:     934786     714007     432100     217627    1905295    1622682    1150693     517990  IR-PCI-MSI 1048579-Edge      enp2s0-TxRx-3
 39:          0          0          0          0   14185366          0          0          0  IR-PCI-MSI 1048580-Edge      enp2s0-TxRx-4
 40:          0          0          0          0          0   14332864          0          0  IR-PCI-MSI 1048581-Edge      enp2s0-TxRx-5
 41:          0          0          0          0          0          0   14617282          0  IR-PCI-MSI 1048582-Edge      enp2s0-TxRx-6
 42:          0          0          0          0          0          0          0   14840029  IR-PCI-MSI 1048583-Edge      enp2s0-TxRx-7
 43:         57         88         47         34         77         64         75         58  IR-PCI-MSI 1048584-Edge      enp2s0
 44:          0          0          0          0          0         13          1          1  IR-PCI-MSI 360448-Edge      mei_me
 45:        246         20         30          4        345        132        128        142  IR-PCI-MSI 442368-Edge      snd_hda_intel
 46:      63933       9794       7233       4753      28843      19323      17678      11191  IR-PCI-MSI 524288-Edge      nvidia
NMI:         57         43         35         42        103         98         83         76   Non-maskable interrupts
LOC:     300755     258293     257168     289802     373725     262211     218677     196510   Local timer interrupts
SPU:          0          0          0          0          0          0          0          0   Spurious interrupts
PMI:         57         43         35         42        103         98         83         76   Performance monitoring interrupts
IWI:          0          0          0          0          1          0          0          0   IRQ work interrupts
RTR:          0          0          0          0          0          0          0          0   APIC ICR read retries
RES:    7721466    2192716    1958606    3095012    1106115    1189666     309133     169884   Rescheduling interrupts
CAL:       2598       2206       2194       1751       1976       2255       2130       2211   Function call interrupts
TLB:       5450       6659       6103       5640       4352       5128       4535       4470   TLB shootdowns
TRM:          0          0          0          0          0          0          0          0   Thermal event interrupts
THR:          0          0          0          0          0          0          0          0   Threshold APIC interrupts
DFR:          0          0          0          0          0          0          0          0   Deferred Error APIC interrupts
MCE:          0          0          0          0          0          0          0          0   Machine check exceptions
MCP:         11         11         11         11         11         11         11         11   Machine check polls
ERR:          0
MIS:          0
PIN:          0          0          0          0          0          0          0          0   Posted-interrupt notification event
PIW:          0          0          0          0          0          0          0          0   Posted-interrupt wakeup event

ここで、ソケットリーダーにレート制御を適用します。

  • インバウンド速度制御は、接続ごとに50KBに設定されています
  • 1万000の接続があるため、これは約500 MB /秒です。
  • レート制御は、読み取り周波数を5hzに設定し、前の例の40hzから下げます。
  • レート制御の周波数は調整されていません。つまり、すべての接続が同じ開始基準を使用してティックするわけではありませんが、それらはすべて単一のクロックによって制御されます。
  • 時計は40Hzです。つまり、スケジュールされた速度制御読み取りが発生する機会は40あります。
  • これらの5hzレート制御読み取りのそれぞれの間、ソケットは最大10KBまでしか読み取ることができません。したがって、1秒に5回、ソケットバッファーから10KBを読み取ります。
  • ラインテスターは、read()が1秒間に合計約47,000回呼び出されることを示しています。

softirqの量は8%から50-65%にジャンプします;割り込みの数はほぼ3倍になり、以前の100万から700万と比較して、26から5800万のRES割り込み(コアあたり)があります。

top - 22:31:50 up  1:19,  1 user,  load average: 2.30, 2.30, 1.96
Tasks: 259 total,   2 running, 257 sleeping,   0 stopped,   0 zombie
%Cpu(s):  3.3 us,  5.5 sy,  0.0 ni, 41.2 id,  0.0 wa,  0.0 hi, 50.0 si,  0.0 st
KiB Mem : 16378912 total, 11752520 free,  2189080 used,  2437312 buff/cache
KiB Swap: 16721916 total, 16721916 free,        0 used. 12590400 avail Mem 

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND     
    3 root      20   0       0      0      0 S  82.1  0.0  26:57.43 ksoftirqd/0 
 5194 jon       20   0 7212040 233488  16720 S  46.2  1.4  12:08.73 Java        
   28 root      20   0       0      0      0 S  40.2  0.0   9:04.84 ksoftirqd/4 
   33 root      20   0       0      0      0 S  30.9  0.0   7:26.84 ksoftirqd/5 
   43 root      20   0       0      0      0 R  21.6  0.0   4:26.41 ksoftirqd/7 
   38 root      20   0       0      0      0 S  21.3  0.0   5:37.16 ksoftirqd/6 
 4922 jon       20   0 1533388 475124 127784 S   5.6  2.9   2:41.82 firefox     
 3194 root      20   0  722448 163872 134052 S   5.3  1.0   2:50.84 Xorg        
 5154 jon       20   0  589896  83876  53964 S   1.7  0.5   0:26.08 plugin-con+ 
   13 root      20   0       0      0      0 S   1.3  0.0   0:42.60 ksoftirqd/1 
 4548 jon       20   0 5492168 634252  43104 S   1.3  3.9   2:18.86 Java        
 4149 jon       20   0 1604016 169732  75348 S   1.0  1.0   0:52.62 compiz      
   18 root      20   0       0      0      0 S   0.7  0.0   0:35.31 ksoftirqd/2 
   23 root      20   0       0      0      0 S   0.3  0.0   0:22.65 ksoftirqd/3 

cat /proc/interrupts
           CPU0       CPU1       CPU2       CPU3       CPU4       CPU5       CPU6       CPU7       
  0:         17          0          0          0          0          0          0          0  IR-IO-APIC   2-Edge      timer
  1:          0          1          0          0          1          0          0          0  IR-IO-APIC   1-Edge      i8042
  5:          0          0          0          0          0          0          0          0  IR-IO-APIC   5-Edge      parport0
  8:          0          0          0          0          0          1          0          0  IR-IO-APIC   8-Edge      rtc0
  9:          0          0          0          0          0          0          0          0  IR-IO-APIC   9-fasteoi   acpi
 12:          2          0          1          0          1          0          0          0  IR-IO-APIC  12-Edge      i8042
 16:         50          6          2          6         10          0          0          3  IR-IO-APIC  16-fasteoi   ehci_hcd:usb1
 17:       1138         35         14         24        227         25         35         24  IR-IO-APIC  17-fasteoi   snd_hda_intel
 19:          0          1          0          0          0          1          0          0  IR-IO-APIC  19-fasteoi   firewire_ohci
 23:         11          4         10          1          7          0          0          0  IR-IO-APIC  23-fasteoi   ehci_hcd:usb2
 24:          0          0          0          0          0          0          0          0  DMAR-MSI   0-Edge      dmar0
 27:       6518       1966       1471       1031       4361       3847       2501       1673  IR-PCI-MSI 327680-Edge      xhci_hcd
 28:      26732       3381       1957       1447       6687       3367       2112       1502  IR-PCI-MSI 512000-Edge      0000:00:1f.2
 29:        930        184        150        114        283        344        232        142  IR-PCI-MSI 2097152-Edge      eth0-rx-0
 30:          0          0          0          0          0          0          0          0  IR-PCI-MSI 2097153-Edge      eth0-tx-0
 31:          0          0          0          0          1          0          0          0  IR-PCI-MSI 2097154-Edge      eth0
 32:        899        234        138        104        277        348        236        143  IR-PCI-MSI 2621440-Edge      eth1-rx-0
 33:          0          0          0          0          0          0          0          0  IR-PCI-MSI 2621441-Edge      eth1-tx-0
 34:          1          0          0          0          0          0          0          0  IR-PCI-MSI 2621442-Edge      eth1
 35:    1339704     330929      97391      31445    2023348    1859243    1369358     782238  IR-PCI-MSI 1048576-Edge      enp2s0-TxRx-0
 36:    1863223    3328011    1764431     788048    2411300    2677922    2540016    1742062  IR-PCI-MSI 1048577-Edge      enp2s0-TxRx-1
 37:    1911973    3426913    2084294     955668    2216702    2894499    2008907    1723010  IR-PCI-MSI 1048578-Edge      enp2s0-TxRx-2
 38:    2064515    3379490    2155421    1093171    2652077    3162801    2369659    1442568  IR-PCI-MSI 1048579-Edge      enp2s0-TxRx-3
 39:          0          0          0          0   23079493          0          0          0  IR-PCI-MSI 1048580-Edge      enp2s0-TxRx-4
 40:          0          0          0          0          0   23379687          0          0  IR-PCI-MSI 1048581-Edge      enp2s0-TxRx-5
 41:          0          0          0          0          0          0   24721093          0  IR-PCI-MSI 1048582-Edge      enp2s0-TxRx-6
 42:          0          0          0          0          0          0          0   25752073  IR-PCI-MSI 1048583-Edge      enp2s0-TxRx-7
 43:        211        430        277        179        142        219        240        197  IR-PCI-MSI 1048584-Edge      enp2s0
 44:          0          0          0          0          0         13          1          1  IR-PCI-MSI 360448-Edge      mei_me
 45:        246         20         30          4        345        132        128        142  IR-PCI-MSI 442368-Edge      snd_hda_intel
 46:      87961      29805      21965      14718      43334      42053      34617      23830  IR-PCI-MSI 524288-Edge      nvidia
NMI:        218        130        107        105        252        247        225        214   Non-maskable interrupts
LOC:     716630     636798     640606     679852     641275     555921     488433     446196   Local timer interrupts
SPU:          0          0          0          0          0          0          0          0   Spurious interrupts
PMI:        218        130        107        105        252        247        225        214   Performance monitoring interrupts
IWI:          0          0          0          0          3          0          0          0   IRQ work interrupts
RTR:          0          0          0          0          0          0          0          0   APIC ICR read retries
RES:   38554509    4165414    4123561    5839087    2680226    2883656    1297965     812274   Rescheduling interrupts
CAL:       3292       2356       2373       2014       2215       2496       2375       2474   Function call interrupts
TLB:      10997      21211      21364      22716      11757      23899      28023      27646   TLB shootdowns
TRM:          0          0          0          0          0          0          0          0   Thermal event interrupts
THR:          0          0          0          0          0          0          0          0   Threshold APIC interrupts
DFR:          0          0          0          0          0          0          0          0   Deferred Error APIC interrupts
MCE:          0          0          0          0          0          0          0          0   Machine check exceptions
MCP:         17         17         17         17         17         17         17         17   Machine check polls
ERR:          0
MIS:          0
PIN:          0          0          0          0          0          0          0          0   Posted-interrupt notification event
PIW:          0          0          0          0          0          0          0          0   Posted-interrupt wakeup event

これがなぜ起こっているのか、そしておそらくそれを回避する方法を誰かが説明できますか?

参考までに、送信レート制御@ 500MB/sを使用する場合のtopは次のとおりです

top - 01:26:15 up  4:13,  1 user,  load average: 0.38, 0.31, 1.00
Tasks: 254 total,   1 running, 253 sleeping,   0 stopped,   0 zombie
%Cpu(s):  1.7 us,  3.7 sy,  0.0 ni, 93.3 id,  0.1 wa,  0.0 hi,  1.2 si,  0.0 st
KiB Mem : 16378912 total, 12912528 free,  2209912 used,  1256472 buff/cache
KiB Swap: 16721916 total, 16721916 free,        0 used. 13873312 avail Mem 

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND     
 6560 jon       20   0 7212040 204656  16836 S  38.9  1.2   0:21.37 Java        
 3194 root      20   0  871176 206844 175404 S   1.0  1.3  12:11.62 Xorg        
 4149 jon       20   0 1909092 221972  99348 S   0.7  1.4   3:21.75 compiz      
 4548 jon       20   0 5879804 662312  45948 S   0.7  4.0   6:48.86 Java        
 3940 jon       20   0  350840  13196   5468 S   0.3  0.1   0:20.41 ibus-daemon 
 4922 jon       20   0 1779380 686992 145824 S   0.3  4.2  20:38.42 firefox     
 5827 root      20   0       0      0      0 S   0.3  0.0   0:00.64 kworker/4:1 
 6341 root      20   0       0      0      0 S   0.3  0.0   0:00.93 kworker/1:2 
 6539 root      20   0       0      0      0 S   0.3  0.0   0:00.31 kworker/0:2 
    1 root      20   0  185280   5896   3964 S   0.0  0.0   0:01.01 systemd     
    2 root      20   0       0      0      0 S   0.0  0.0   0:00.02 kthreadd    
    3 root      20   0       0      0      0 S   0.0  0.0 107:56.20 ksoftirqd/0 
    5 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 kworker/0:+ 

2、500 TCP接続を接続し、レート制御を使用すると、20K ppsの内部TCP送信パケットレートが表示されます。5、000にジャンプするとTCP接続がその数を表示します105K ppsにジャンプ、7、500にジャンプTCPは、190K ppsにアウトバウンドジャンプします(これらは、読み取りを確認するパケットです-または私は想定しています)**

2:サーバーにSolarflareカードを、クライアントにIntel X540T1を配置します。 IRQがksoftirqd/0に100%を使用して固定しており、合計siから12.5%までが約1コアです。 Solarflareを使用すると、RES割り込みはコアあたり10 000を超えません。**

以下は、Solarflareカードを使用する場合のサーバーです。ただし、ターゲットの500MB/sではなく、約360-400MB/sしか受信されていません

top - 11:07:55 up 16 min,  1 user,  load average: 1.49, 1.09, 0.62
Tasks: 259 total,   3 running, 256 sleeping,   0 stopped,   0 zombie
%Cpu(s):  1.5 us,  2.5 sy,  0.0 ni, 83.5 id,  0.0 wa,  0.0 hi, 12.5 si,  0.0 st
KiB Mem : 16378912 total, 12294300 free,  2356136 used,  1728476 buff/cache
KiB Swap: 16721916 total, 16721916 free,        0 used. 13067464 avail Mem 

  PID USER      PR  NI    VIRT    RES    SHR S  %CPU %MEM     TIME+ COMMAND     
    3 root      20   0       0      0      0 R  99.7  0.0   5:20.82 ksoftirqd/0 
 4620 jon       20   0 7212040 246176  16712 S  25.6  1.5   1:24.67 Java        
 3241 root      20   0  716936 161772 133628 R   3.3  1.0   0:15.42 Xorg        
 4659 jon       20   0  654928  36356  27820 S   1.0  0.2   0:00.63 gnome-term+ 
 4103 jon       20   0 1567768 141048  75340 S   0.7  0.9   0:06.44 compiz      
 4542 jon       20   0 5688204 601804  43040 S   0.7  3.7   1:03.91 Java        
    7 root      20   0       0      0      0 S   0.3  0.0   0:00.93 rcu_sched   
 4538 root      20   0       0      0      0 S   0.3  0.0   0:00.68 kworker/4:2 
    1 root      20   0  119844   5980   4028 S   0.0  0.0   0:00.84 systemd     
    2 root      20   0       0      0      0 S   0.0  0.0   0:00.00 kthreadd    
    5 root       0 -20       0      0      0 S   0.0  0.0   0:00.00 kworker/0:+ 
    8 root      20   0       0      0      0 S   0.0  0.0   0:00.00 rcu_bh      
    9 root      rt   0       0      0      0 S   0.0  0.0   0:00.00 migration/0 
   10 root      rt   0       0      0      0 S   0.0  0.0   0:00.02 watchdog/0  
   11 root      rt   0       0      0      0 S   0.0  0.0   0:00.00 watchdog/1  
   12 root      rt   0       0      0      0 S   0.0  0.0   0:00.00 migration/1 
   13 root      20   0       0      0      0 S   0.0  0.0   0:00.02 ksoftirqd/1 

cat /proc/interrupts
           CPU0       CPU1       CPU2       CPU3       CPU4       CPU5       CPU6       CPU7       
  0:         17          0          0          0          0          0          0          0  IR-IO-APIC   2-Edge      timer
  1:          1          0          0          1          0          0          0          0  IR-IO-APIC   1-Edge      i8042
  5:          0          0          0          0          0          0          0          0  IR-IO-APIC   5-Edge      parport0
  8:          0          0          0          0          0          1          0          0  IR-IO-APIC   8-Edge      rtc0
  9:          0          0          0          0          0          0          0          0  IR-IO-APIC   9-fasteoi   acpi
 12:          1          0          1          0          1          0          1          0  IR-IO-APIC  12-Edge      i8042
 16:         61          2          1          3          7          2          1          0  IR-IO-APIC  16-fasteoi   ehci_hcd:usb1
 17:       1166         55         10         19        245         45         13         19  IR-IO-APIC  17-fasteoi   snd_hda_intel
 19:          0          0          0          0          2          0          0          0  IR-IO-APIC  19-fasteoi   firewire_ohci
 23:         26          1          2          0          1          2          0          1  IR-IO-APIC  23-fasteoi   ehci_hcd:usb2
 24:          0          0          0          0          0          0          0          0  DMAR-MSI   0-Edge      dmar0
 27:       1723        170        168        126       1603        166        135         47  IR-PCI-MSI 327680-Edge      xhci_hcd
 28:      24980       1714        933        754       7492       1546       1202        936  IR-PCI-MSI 512000-Edge      0000:00:1f.2
 29:        298          2          1          7        159          4          6          1  IR-PCI-MSI 2097152-Edge      eth0-rx-0
 30:          0          0          0          0          0          0          0          0  IR-PCI-MSI 2097153-Edge      eth0-tx-0
 31:          1          0          0          0          0          0          0          0  IR-PCI-MSI 2097154-Edge      eth0
 32:      16878       5179       2952       3044      18575       7842       3822       3939  IR-PCI-MSI 1048576-Edge      enp2s0f0-0
 33:      16174       4967       2787       2583      19305       7883       3507       3862  IR-PCI-MSI 1048577-Edge      enp2s0f0-1
 34:      16707       5192       2952       2659      18031       8588       3496       4393  IR-PCI-MSI 1048578-Edge      enp2s0f0-2
 35:      17726       5431       2951       2746      17183       8105       3529       4238  IR-PCI-MSI 1048579-Edge      enp2s0f0-3
 36:          6          1          0          3          6          3          0          1  IR-PCI-MSI 1050624-Edge      enp2s0f1-0
 37:          1          1          0          0          0          0          0          0  IR-PCI-MSI 1050625-Edge      enp2s0f1-1
 38:          1          1          0          0          0          0          0          0  IR-PCI-MSI 1050626-Edge      enp2s0f1-2
 39:          1          1          0          0          0          0          0          0  IR-PCI-MSI 1050627-Edge      enp2s0f1-3
 40:        414         12          9          3          0         14         18          8  IR-PCI-MSI 2621440-Edge      eth1-rx-0
 41:          0          0          0          0          0          0          0          0  IR-PCI-MSI 2621441-Edge      eth1-tx-0
 42:          1          0          0          0          0          0          0          0  IR-PCI-MSI 2621442-Edge      eth1
 43:          0          0          0          0         10          0          5          0  IR-PCI-MSI 360448-Edge      mei_me
 44:         95         26          8         33        398        384         51         16  IR-PCI-MSI 442368-Edge      snd_hda_intel
 45:      17400       1413       1135        806      17781       1714       1401        988  IR-PCI-MSI 524288-Edge      nvidia
NMI:         37          3          5          3          2          1          1          1   Non-maskable interrupts
LOC:     112894      53399      87350      46718      43552      19663      25436      19705   Local timer interrupts
SPU:          0          0          0          0          0          0          0          0   Spurious interrupts
PMI:         37          3          5          3          2          1          1          1   Performance monitoring interrupts
IWI:          0          0          0          0          0          0          0          0   IRQ work interrupts
RTR:          0          0          0          0          0          0          0          0   APIC ICR read retries
RES:       1808       7668       9364       1244       4161       2554       9171        954   Rescheduling interrupts
CAL:       1900       2028       1497       1984       1862       1931       2118       2004   Function call interrupts
TLB:       1991       2539       3176       2985       3176       2458       1612       2087   TLB shootdowns
TRM:          0          0          0          0          0          0          0          0   Thermal event interrupts
THR:          0          0          0          0          0          0          0          0   Threshold APIC interrupts
DFR:          0          0          0          0          0          0          0          0   Deferred Error APIC interrupts
MCE:          0          0          0          0          0          0          0          0   Machine check exceptions
MCP:          5          5          5          5          5          5          5          5   Machine check polls
ERR:          0
MIS:          0
PIN:          0          0          0          0          0          0          0          0   Posted-interrupt notification event
PIW:          0          0          0          0          0          0          0          0   Posted-interrupt wakeup event
6
Johnny V

問題は、デフォルトで構成されたソケットでレート制御を使用することになったため、内部のTCPバッファーサイズが、読み取り時間が遅いため、ますます大きなサイズに自動的に調整されていました。 (デフォルトの最大サイズは6MBのようです)サイズが自動的に大きくなると、TCPコンパクトプロセスが狂ったように動き始め、すべてのsoftirqを食べます。これを修正する方法は、レート制御を使用してこの異常な動作を防止する場合は、明示的にTCPバッファーサイズを設定してください。

1
Johnny V