質問: レート制御ネットワーキングを使用する場合の高い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アダプターを完全に飽和させますsoftirqtop - 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
回答: 問題は、デフォルトで構成されたソケットでレート制御を使用することになったため、内部のtcpバッファーサイズが、読み取り時間が遅いため、ますます大きなサイズに自動的に調整されていました。 (デフォルトの最大サイズは6mbのようです)サイズが自動的に大きくなると、tcpコンパクトプロセスが狂ったように動き始め、すべてのsoftirqを食べます。これを修正する方法は、レート制御を使用してこの異常な動作を防止する場合は、明示的にtcpバッファーサイズを設定してください。