Netdev List
 help / color / mirror / Atom feed
* [PATCH 0/2] net: Use synchronous wakeups selectively
@ 2026-07-14  1:39 Srikar Dronamraju
  2026-07-14  1:39 ` [PATCH 1/2] net/socket: Record preference for synchronous wakeups Srikar Dronamraju
  2026-07-14  1:39 ` [PATCH 2/2] net/sock: Propagate WF_SYNC only when requested Srikar Dronamraju
  0 siblings, 2 replies; 3+ messages in thread
From: Srikar Dronamraju @ 2026-07-14  1:39 UTC (permalink / raw)
  To: LKML, netdev, David S Miller
  Cc: Ingo Molnar, Peter Zijlstra, Dietmar Eggemann, Dust Li, D Wythe,
	Eric Dumazet, Jakub Kicinski, Jon Maloy, Kuniyuki Iwashima,
	linux-sctp, Mahanta Jambigi, Marcelo Ricardo Leitner, Paolo Abeni,
	Sidraya Jayagond, Simon Horman, Tony Lu, Wen Gu, Wenjia Zhang,
	Willem de Bruijn, Xin Long, Shrikanth Hegde, Vincent Guittot,
	Steven Rostedt, Ben Segall, Mel Gorman, Valentin Schneider,
	K Prateek Nayak, Srikar Dronamraju

The scheduler assumes in several wakeup paths that a task using WF_SYNC
is likely to yield the CPU shortly. However several networking wakeup
paths unconditionally use synchronous wakeups even when the waking task
continues execution.

During wakeup, with WF_SYNC flag set, because of the assumption that
current thread is ready to give up, the wakee thread will be migrated
from any core within the chip to the current LLC. If these operations
are frequent, and wakers are actually not going away, then it will lead
to load imbalance and hurt performance. This is especially true in
architectures where LLCs are small and number of LLCs per chip are more.

Running vllm workload was run on Power10 system
                                  No patch      with patch %diff
Inference Time (sec)              17.84         16.35     -8.35%
llm query bandwidth (tokens/sec)  14.78         16.21     +9.68%

Lower inference time and higher tokens/sec is better.

Srikar Dronamraju (2):
  net/socket: Record preference for synchronous wakeups
  net/sock: Propagate WF_SYNC only when requested

 include/net/sock.h |  1 +
 net/core/sock.c    | 31 +++++++++++++++++++------
 net/sctp/socket.c  | 10 +++++++--
 net/smc/af_smc.c   |  4 ++--
 net/smc/smc_rx.c   | 10 +++++++--
 net/socket.c       | 56 +++++++++++++++++++++++++++++++++++++++-------
 net/tipc/socket.c  | 22 +++++++++++++-----
 net/unix/af_unix.c | 26 ++++++++++++++-------
 8 files changed, 126 insertions(+), 34 deletions(-)

-- 
2.51.0


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2026-07-14  1:41 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-07-14  1:39 [PATCH 0/2] net: Use synchronous wakeups selectively Srikar Dronamraju
2026-07-14  1:39 ` [PATCH 1/2] net/socket: Record preference for synchronous wakeups Srikar Dronamraju
2026-07-14  1:39 ` [PATCH 2/2] net/sock: Propagate WF_SYNC only when requested Srikar Dronamraju

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox