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

From: Jakub Kicinski
Date: Wed May 11 2022 - 19:26:50 EST


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.