Subject: Re: [RFC,net-next,x86 0/6] Nontemporal copies in unix socket write path

From: Jakub Kicinski <[email-masked]>
Date: Wed, 11 May 2022 16:25:20 -0700

On Tue, 10 May 2022 20:54:21 -0700 Joe Damato wrote:
> Initial benchmarks are extremely encouraging. I wrote a simple C program to
> benchmark this patchset, the program:
>   - Creates a unix socket pair
>   - Forks a child process
>   - The parent process writes to the unix socket using MSG_NTCOPY - or not -
>     depending on the command line flags
>   - The child process uses splice to move the data from the unix socket to
>     a pipe buffer, followed by a second splice call to move the data from
>     the pipe buffer to a file descriptor opened on /dev/null.
>   - taskset is used when launching the benchmark to ensure the parent and
>     child run on appropriate CPUs for various scenarios

Is there a practical use case?

The patches look like a lot of extra indirect calls.