DPDK patches and discussions
 help / color / mirror / Atom feed
* [dpdk-dev] How to fight forwarding performance regression on large mempool sizes.
@ 2013-09-19  7:50 Dmitry Vyal
  2013-09-19 19:39 ` Robert Sanford
  0 siblings, 1 reply; 8+ messages in thread
From: Dmitry Vyal @ 2013-09-19  7:50 UTC (permalink / raw)
  To: dev

Good day everyone,

While working on IP packet defragmenting I had to enlarge mempool size. 
I did this to provide large enough time window for assembling a fragment 
sequence. Unfortunately, I got a performance regression: if I enlarge 
mempool size from 2**12 to 2**20 MBufs, packet performance for not 
fragmented packets drops from ~8.5mpps to ~5.5mpps for single core. I 
made only a single measure, so the data are noisy, but the trend is evident:
SIZE 4096 - 8.47mpps
SIZE 8192 - 8.26mpps
SIZE 16384 - 8.29mpps
SIZE 32768 - 8.31mpps
SIZE 65536 - 8.12mpps
SIZE 131072 - 7.93mpps
SIZE 262144 - 6.22mpps
SIZE 524288 - 5.72mpps
SIZE 1048576 - 5.63mpps

And I need even larger sizes.

I want to ask for an advice, how best to tackle this? One way I'm 
thinking about is to make two mempools, one large for fragments (we may 
accumulate a big number of them) and one small for full packets, we just 
forward them burst by burst. Is it possible to configure RSS to 
distribute packets between queues according to this scheme? Perhaps, 
there are better ways?

Thanks,
Dmitry

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

end of thread, other threads:[~2013-09-22 19:03 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2013-09-19  7:50 [dpdk-dev] How to fight forwarding performance regression on large mempool sizes Dmitry Vyal
2013-09-19 19:39 ` Robert Sanford
2013-09-19 19:43   ` Venkatesan, Venky
2013-09-20  6:50     ` Dmitry Vyal
2013-09-20  6:48   ` Dmitry Vyal
2013-09-20 14:41     ` Robert Sanford
2013-09-20 15:34     ` Robert Sanford
2013-09-22 19:03       ` Dmitry Vyal

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).