[dpdk-dev] lost when learning how to test dpdk

ciprian.barbu ciprian.barbu at enea.com
Wed Jul 29 11:09:06 CEST 2015



On 28.07.2015 21:13, Jan Viktorin wrote:
> Hello all,
>
> I am learning how to measure throughput with dpdk. I have 4 cores
> Intel(R) Core(TM) i3-4360 CPU @ 3.70GHz and two 82545GM NICs connected
> together. I do not understand very well, how to setup testpmd.

http://dpdk.org/doc
http://dpdk.org/doc/guides/testpmd_app_ug/run_app.html
http://dpdk.org/doc/quick-start

>
> I've successfully bound the NICs to dpdk:
>
> $ dpdk_nic_bind --status
>
> Network devices using DPDK-compatible driver
> ============================================
> 0000:03:00.0 '82545GM Gigabit Ethernet Controller' drv=uio_pci_generic unused=e1000
> 0000:03:02.0 '82545GM Gigabit Ethernet Controller' drv=uio_pci_generic unused=e1000
>
> Network devices using kernel driver
> ===================================
> 0000:00:19.0 'Ethernet Connection I217-V' if=eno1 drv=e1000e unused=uio_pci_generic *Active*
>
> Other network devices
> =====================
> <none>
>
> and then I tried to run testpmd:
>
> sudo ./testpmd -b 0000:03:00.0 -b 0000:03:02.0 -c 0xf -n2 -- --nb-cores=1 --nb-ports=0 --rxd=2048 --txd=2048 --mbcache=512 --burst=512

http://dpdk.org/doc/guides/testpmd_app_ug/run_app.html#testpmd-command-line-options

The -b option black lists your PCI devices, you don't need those. The 
--nb-ports is of course the number of ports, it cannot be 0.

> ...
> EAL: Ask a virtual area of 0x400000 bytes
> EAL: Virtual area found at 0x7f1549800000 (size = 0x400000)
> EAL: Requesting 1024 pages of size 2MB from socket 0
> EAL: TSC frequency is ~3699999 KHz
> EAL: Master lcore 0 is ready (tid=de94a8c0;cpuset=[0])
> EAL: lcore 2 is ready (tid=487fd700;cpuset=[2])
> EAL: lcore 3 is ready (tid=47ffc700;cpuset=[3])
> EAL: lcore 1 is ready (tid=48ffe700;cpuset=[1])
> EAL: No probed ethernet devices
> EAL: Error - exiting with code: 1
>    Cause: Invalid port 0
>
> I tried --nb-ports={0,1,2} but neither of them works. BTW, what does this option it mean? :)
> I could not find any description in the docs nor in the help (maybe I've omitted something).
>
>
> Well, if I manage the testpmd to work I need a packet generator, right? I've downloaded
> the dpdk-pktgen. And I am lost again. How can I start it?
>
> After several attempts (mostly trying to use the pktgen-master/slave.sh, what is
> their purpose?), the most "successful" output was:
>
> ...
> EAL: Detected lcore 0 as core 0 on socket 03 handles port 1 rx & core 4 handles port 0-7 tx
> EAL: Detected lcore 1 as core 1 on socket 0 as it does not matter to the syntax.
> EAL: Detected lcore 2 as core 0 on socket 0
> EAL: Detected lcore 3 as core 1 on socket 0p/app/x86_64-native-linuxapp-gcc (master *%=)
> EAL: Support maximum 128 logical core(s) by configuration.
> EAL: Detected 4 lcore(s)
> EAL: No free hugepages reported in hugepages-2048kB

You either don't have hugepages or there aren't any free left.

> PANIC in rte_eal_init():
> Cannot get hugepage information
> 6: [./pktgen(_start+0x29) [0x41abc9]]
> 5: [/usr/lib/libc.so.6(__libc_start_main+0xf0) [0x7f93eadcc790]]
> 4: [./pktgen(main+0x140) [0x419d80]]
> 3: [./pktgen(rte_eal_init+0xd2b) [0x4bb8bb]]
> 2: [./pktgen(__rte_panic+0xc9) [0x419ae5]]
> 1: [./pktgen(rte_dump_stack+0x16) [0x4c3946]]
> Aborted (core dumped)
>
> I'd like to run a simple scenario, just sending packets from one NIC to the other (or
> something similar) and measure the throughput. Could you please help me?
>
> Regards
> Jan Viktorin
>


More information about the dev mailing list