DPDK usage discussions
 help / color / mirror / Atom feed
From: "Lombardo, Ed" <Ed.Lombardo@netscout.com>
To: "users@dpdk.org" <users@dpdk.org>
Subject: dpdk 22.11
Date: Sun, 29 Oct 2023 22:13:17 +0000	[thread overview]
Message-ID: <PH0PR01MB673025D65579A84556B1AEFE8FA2A@PH0PR01MB6730.prod.exchangelabs.com> (raw)

[-- Attachment #1: Type: text/plain, Size: 2631 bytes --]

Hi,
I upgraded from DPDK 17.11 to DPDK 22.11.  Also introduced the Intel E810 NIC to the mix.
VM host is running Oracle 9 with kernel 5.14.0-162 in VMWARE 7.03 and PCI Passthrough.

Was able to detect the E810-XXV NIC ethernet port with DPDK API (rte_eth_dev_count_avail()), however I see problems when do mmap in our application after the DPDK initialization.

[root@vstreamOR9-160 bin]# /opt/dpdk/dpdk_nic_bind.py --status

Network devices using DPDK-compatible driver
============================================
0000:0b:00.0 'Ethernet Controller E810-XXV for SFP 159b' drv=igb_uio unused=ice

Network devices using kernel driver
===================================
0000:03:00.0 'VMXNET3 Ethernet Controller 07b0' if=eth0 drv=vmxnet3 unused=igb_uio *Active*


Found errors when application is started with gdb:
EAL: Detected CPU lcores: 16
EAL: Detected NUMA nodes: 1
EAL: Detected static linkage of DPDK
[New Thread 0x7f60c8cb0640 (LWP 3872)]
EAL: Multi-process socket /var/run/dpdk/rte/mp_socket
[New Thread 0x7f60c84af640 (LWP 3873)]
EAL: Selected IOVA mode 'PA'
EAL: rte_mem_virt2phy(): cannot open /proc/self/pagemap: Too many open files
EAL: rte_mem_virt2phy(): cannot open /proc/self/pagemap: Too many open files
EAL: rte_mem_virt2phy(): cannot open /proc/self/pagemap: Too many open files
EAL: rte_mem_virt2phy(): cannot open /proc/self/pagemap: Too many open files
EAL: rte_mem_virt2phy(): cannot open /proc/self/pagemap: Too many open files
EAL: eal_memalloc_alloc_seg_bulk(): couldn't find suitable memseg_list
EAL: FATAL: Cannot init memory
EAL: Cannot init memory

This may be a hint why mmap fails.
Tried the following:

  *   increase the VM memory from 16 GB to 32 GB,
  *   increase the amount of hugepages from 2GB to 4GB,
  *   ulimit -n shows open files = 1024, had to increase to 2048 to eliminate the rte_mem_virt2phy() errors above when start app with gdb.
  *   free shows 62579808 free and available
  *   htop shows our application VIRT is 66 GB, what a surprise to see this value so high.  With DPDK 17.11 this value is around 5.5 GB.

Was able to get our application to process packets from E810 once I changed the VM total memory to 80GB.
In HTOP the Mem value shows 5.28G/78.5G and VIRT is 69.0 GB.

When the main application executes rte_eal_init() is when the VIRT memory jumps to 66 GB, this is before the application configures the DPDK resources (worker rings, port configuration, etc).

Is there a setting in meson to reduce the DPDK resource in our application?
Is telemetry memory consuming?

Any help will be appreciated.

Thanks,
Ed

[-- Attachment #2: Type: text/html, Size: 8708 bytes --]

                 reply	other threads:[~2023-10-29 22:13 UTC|newest]

Thread overview: [no followups] expand[flat|nested]  mbox.gz  Atom feed

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=PH0PR01MB673025D65579A84556B1AEFE8FA2A@PH0PR01MB6730.prod.exchangelabs.com \
    --to=ed.lombardo@netscout.com \
    --cc=users@dpdk.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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).