All of lore.kernel.org
 help / color / mirror / Atom feed
* stmmac: Disappointing or normal DMA performance?
@ 2021-09-22  8:48 John Smith
  2021-09-22 14:12 ` Andrew Lunn
       [not found] ` <YUuFfuowmumndWkI@lunn.ch>
  0 siblings, 2 replies; 4+ messages in thread
From: John Smith @ 2021-09-22  8:48 UTC (permalink / raw)
  To: netdev

I have a one-way 300Mbs traffic RGMII arriving at a stmmac version
3.7, in the form of 30000 1280-byte frames per second, evenly spread.

In NAPI poll mode, at each DMA interrupt, I get around 10 frames. More
precisely:

In stmmac_rx of stmmac_main.c:

static int stmmac_rx(struct stmmac_priv *priv, int limit) {
...
while (count < limit)

count is around 10 when NAPI limit/weight is 64. It means that I get
3000 DMA IRQs per second for my 30000 packets.

I have tried different settings but I can't do anything better.
"Better" meaning that I would like to have fewer interrupts per
second, so a higher number of frames on each interrupt in order to
minimize the load transferred to my CPU.

Everything else being the same, if I send 10000 1280x3=3840-byte
frames per second, I get around 3 or 4 frames per interrupt.

Is there a way to increase the ratio of packets / IRQs? I want fewer
IRQs with more packets as the current performance overloads my
embedded chip,

John

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

end of thread, other threads:[~2021-09-22 22:33 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-09-22  8:48 stmmac: Disappointing or normal DMA performance? John Smith
2021-09-22 14:12 ` Andrew Lunn
2021-09-22 18:59   ` John Smith
     [not found] ` <YUuFfuowmumndWkI@lunn.ch>
2021-09-22 22:33   ` John Smith

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.