Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 13 Sep 2024 08:36:59 +0100
From:      Sad Clouds <cryintothebluesky@gmail.com>
Cc:        Paul Procacci <pprocacci@gmail.com>, freebsd-net@freebsd.org
Subject:   Re: Performance issues with vnet jails + epair + bridge
Message-ID:  <20240913083659.443548a87559c3cbaba4e9d8@gmail.com>
In-Reply-To: <20240913080356.98ea2c352595ae0bbd9f0ce8@gmail.com>
References:  <20240912181618.7895d10ad5ff2ebae9883192@gmail.com> <CAFbbPujAEer3aO7VcZ1CtgUUCHsG9eXfn_4s6SJok83GFW4JPA@mail.gmail.com> <20240913080356.98ea2c352595ae0bbd9f0ce8@gmail.com>

next in thread | previous in thread | raw e-mail | index | archive | help
On Fri, 13 Sep 2024 08:03:56 +0100
Sad Clouds <cryintothebluesky@gmail.com> wrote:

> I built new kernel with "options RSS" however TCP throughput performance
> now decreased from 128 MiB/sec to 106 MiB/sec.
> 
> Looks like the problem has shifted from epair to netisr
> 
>   PID USERNAME    PRI NICE   SIZE    RES STATE    C   TIME    WCPU COMMAND
>    12 root        -56    -     0B   272K CPU3     3   3:45 100.00% intr{swi1: netisr 0}
>    11 root        187 ki31     0B    64K RUN      0   9:00  62.41% idle{idle: cpu0}
>    11 root        187 ki31     0B    64K CPU2     2   9:36  61.23% idle{idle: cpu2}
>    11 root        187 ki31     0B    64K RUN      1   8:24  55.03% idle{idle: cpu1}
>     0 root        -64    -     0B   656K -        2   0:50  21.50% kernel{epair_task_2}

I think the issue may be to do with the genet driver itself. I think
the hardware is limited to one CPU per send or receive interrupt. On
Linux the best I can do is set SMP affinity for send on CPU0 and for
receive on CPU1, but that still leaves 2 other CPUs idle.

$ cat /proc/interrupts
           CPU0       CPU1       CPU2       CPU3       
...
 37:      74141          0          0          0     GICv2 189 Level     eth0
 38:      43174          0          0          0     GICv2 190 Level     eth0



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20240913083659.443548a87559c3cbaba4e9d8>