<div dir="ltr"><div dir="ltr"><div dir="ltr"><div><br></div><div><br></div><div>How do you figure out what settings need to be used to correctly configure a DPDK mempool for your application?</div><div><br></div><div>Specifically using rte_pktmbuf_pool_create():</div><div><br></div><div>- n, the number of elements in the mbuf pool</div><div>- cache_size</div><div>- priv_size</div><div>- data_room_size</div><div><br></div><div>EAL arguments:</div><div>- n number of memory channels</div><div>- r number of memory ranks</div><div>- m amount of memory to preallocate at startup</div><div>- in-memory no shared data structures</div><div>- IOVA mode</div><div>- huge-worker-stack</div><div><br></div><div><p style="margin-top:0px;margin-right:0px;margin-left:0px;padding:0px;border:0px;font-variant-numeric:inherit;font-variant-east-asian:inherit;font-stretch:inherit;line-height:inherit;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI Adjusted","Segoe UI","Liberation Sans",sans-serif;font-size:15px;vertical-align:baseline;box-sizing:inherit;clear:both"><span style="background-color:rgb(255,255,255)"><font color="#000000">My setup:</font></span></p><ul style="margin-top:0px;margin-right:0px;margin-left:30px;padding:0px;border:0px;font-variant-numeric:inherit;font-variant-east-asian:inherit;font-stretch:inherit;line-height:inherit;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI Adjusted","Segoe UI","Liberation Sans",sans-serif;font-size:15px;vertical-align:baseline;list-style-position:initial;box-sizing:inherit"><li style="margin-top:0px;margin-right:0px;margin-left:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;box-sizing:inherit"><span style="background-color:rgb(255,255,255)"><font color="#000000">2 x Intel Xeon Gold 6348 CPU @ 2.6 Ghz</font></span><ul style="margin-right:0px;margin-bottom:0px;margin-left:30px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;list-style:disc;box-sizing:inherit"><li style="margin-top:0px;margin-right:0px;margin-left:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;box-sizing:inherit"><span style="background-color:rgb(255,255,255)"><font color="#000000">28 cores per socket</font></span></li><li style="margin-top:0px;margin-right:0px;margin-left:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;box-sizing:inherit"><span style="background-color:rgb(255,255,255)"><font color="#000000">Max 3.5 Ghz</font></span></li><li style="margin-top:0px;margin-right:0px;margin-left:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;box-sizing:inherit"><span style="background-color:rgb(255,255,255)"><font color="#000000">Hyperthreading disabled</font></span></li><li style="margin-top:0px;margin-right:0px;margin-left:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;box-sizing:inherit"><span style="background-color:rgb(255,255,255)"><font color="#000000">Ubuntu 22.04.1 LTS</font></span></li><li style="margin-top:0px;margin-right:0px;margin-left:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;box-sizing:inherit"><span style="background-color:rgb(255,255,255)"><font color="#000000">Kernel 5.15.0-53-generic</font></span></li><li style="margin-top:0px;margin-right:0px;margin-left:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;box-sizing:inherit"><span style="background-color:rgb(255,255,255)"><font color="#000000">Cores set to performance governor</font></span></li><li style="margin-top:0px;margin-right:0px;margin-left:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;box-sizing:inherit"><span style="background-color:rgb(255,255,255)"><font color="#000000">4 x Sabrent 2TB Rocket 4 Plus in RAID0 Config</font></span></li><li style="margin-top:0px;margin-right:0px;margin-left:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;box-sizing:inherit"><span style="background-color:rgb(255,255,255)"><font color="#000000">128 GB DDR4 Memory</font></span></li><li style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;box-sizing:inherit"><span style="background-color:rgb(255,255,255)"><font color="#000000">10 1GB HugePages (Can change to what is required)</font></span></li></ul></li><li style="margin-top:0px;margin-right:0px;margin-left:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;box-sizing:inherit"><span style="background-color:rgb(255,255,255)"><font color="#000000">1 x Mellanox ConnectX-5 100gbe NIC</font></span><ul style="margin-right:0px;margin-bottom:0px;margin-left:30px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;list-style:disc;box-sizing:inherit"><li style="margin-top:0px;margin-right:0px;margin-left:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;box-sizing:inherit"><code style="margin:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit;vertical-align:baseline;box-sizing:inherit;white-space:pre-wrap;background-color:rgb(255,255,255)"><font color="#000000">31:00.0 Ethernet controller: Mellanox Technologies MT27800 Family [ConnectX-5]</font></code></li><li style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;box-sizing:inherit"><span style="background-color:rgb(255,255,255)"><font color="#000000">Firmware-version: 16.35.1012</font></span></li></ul></li><li style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;box-sizing:inherit"><span style="background-color:rgb(255,255,255)"><font color="#000000">UDP Source:</font></span><ul style="margin-right:0px;margin-bottom:0px;margin-left:30px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;list-style:disc;box-sizing:inherit"><li style="margin-top:0px;margin-right:0px;margin-left:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;box-sizing:inherit"><span style="background-color:rgb(255,255,255)"><font color="#000000">100 gbe NIC</font></span></li><li style="margin-top:0px;margin-right:0px;margin-left:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;box-sizing:inherit"><span style="background-color:rgb(255,255,255)"><font color="#000000">9000 MTU Packets</font></span></li><li style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;box-sizing:inherit"><span style="background-color:rgb(255,255,255)"><font color="#000000">ipv4-udp packets</font></span></li></ul></li></ul><p style="margin-top:0px;margin-right:0px;margin-left:0px;padding:0px;border:0px;font-variant-numeric:inherit;font-variant-east-asian:inherit;font-stretch:inherit;line-height:inherit;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI Adjusted","Segoe UI","Liberation Sans",sans-serif;font-size:15px;vertical-align:baseline;box-sizing:inherit;clear:both"><span style="background-color:rgb(255,255,255)"><font color="#000000">Will be receiving 10GB/s UDP packets over a 100gbe link. Right now trying to get it working for 2GB/s to a single queue.</font></span></p><p style="margin:0px;padding:0px;border:0px;font-variant-numeric:inherit;font-variant-east-asian:inherit;font-stretch:inherit;line-height:inherit;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI Adjusted","Segoe UI","Liberation Sans",sans-serif;font-size:15px;vertical-align:baseline;box-sizing:inherit;clear:both"><span style="background-color:rgb(255,255,255)"><font color="#000000">Reviewed the DPDK Programmers guide: <a href="https://doc.dpdk.org/guides/prog_guide/mempool_lib.html" rel="nofollow noreferrer" style="margin:0px;padding:0px;border:0px;font-style:inherit;font-variant:inherit;font-weight:inherit;font-stretch:inherit;line-height:inherit;font-family:inherit;vertical-align:baseline;box-sizing:inherit">https://doc.dpdk.org/guides/prog_guide/mempool_lib.html</a> Also searched online but the resources seem limited. Would appreciate any help or a push in the right direction.</font></span></p><p style="margin:0px;padding:0px;border:0px;font-variant-numeric:inherit;font-variant-east-asian:inherit;font-stretch:inherit;line-height:inherit;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI Adjusted","Segoe UI","Liberation Sans",sans-serif;font-size:15px;vertical-align:baseline;box-sizing:inherit;clear:both"><span style="background-color:rgb(255,255,255)"><font color="#000000"><br></font></span></p><p style="margin:0px;padding:0px;border:0px;font-variant-numeric:inherit;font-variant-east-asian:inherit;font-stretch:inherit;line-height:inherit;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI Adjusted","Segoe UI","Liberation Sans",sans-serif;font-size:15px;vertical-align:baseline;box-sizing:inherit;clear:both"><span style="background-color:rgb(255,255,255)"><font color="#000000">Sincerely,</font></span></p><p style="margin:0px;padding:0px;border:0px;font-variant-numeric:inherit;font-variant-east-asian:inherit;font-stretch:inherit;line-height:inherit;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI Adjusted","Segoe UI","Liberation Sans",sans-serif;font-size:15px;vertical-align:baseline;box-sizing:inherit;clear:both"><span style="background-color:rgb(255,255,255)"><font color="#000000">DB</font></span></p></div></div></div></div>