> -----Original Message----- > From: EXT Maxim Uvarov [mailto:maxim.uva...@linaro.org] > Sent: Friday, January 29, 2016 1:15 PM > To: Elo, Matias (Nokia - FI/Espoo) <matias....@nokia.com>; lng- > o...@lists.linaro.org > Subject: Re: [lng-odp] [API-NEXT PATCH 00/11] DPDK pktio implementation > > On 01/28/2016 17:24, Elo, Matias (Nokia - FI/Espoo) wrote: > >> -----Original Message----- > >> From: lng-odp [mailto:lng-odp-boun...@lists.linaro.org] On Behalf Of EXT > Maxim > >> Uvarov > >> Sent: Thursday, January 28, 2016 3:10 PM > >> To: lng-odp@lists.linaro.org > >> Subject: Re: [lng-odp] [API-NEXT PATCH 00/11] DPDK pktio implementation > >> > >> Matias, can you please add validation test case to that series the same > >> thing which we use for odp-dpkd? > >> I.e. with PCAP PMD. to test functionality. > > You can use normal pktio validation tests (e.g. sudo ODP_PKTIO_IF0=1 > ODP_PKTIO_IF1=3 ./test/validation/pktio/pktio_main). > > Currently, most of the tests fails as _pktio_wait_linkup() in called in > > invalid > locations, but I'm sending a separate patch soon to fix this. > > > > Or did you mean something else? > > > > -Matias > > Something else. DPDK has pcap PMD to run app without hardware on any > device. We did that for make check on odp-dpdk to make > test pass on vethX devices. The same idea as we do for raw sockets. > > file: > https://git.linaro.org/lng/odp-dpdk.git/blob/HEAD:/platform/linux- > dpdk/test/pktio/pktio_run > line: > export ODP_PLATFORM_PARAMS="-n 4 --vdev eth_pcap0,iface=$IF0 --vdev > eth_pcap1,iface=$IF1" > > But I'm not sure if it's applicable to your patches. But if you can add > some check to validation it without hardware > it will be very helpful to catch bugs as soon as possible. >
OK, I'll look into this. It's probably best to submit that in a separate patch as it is a new feature. -Matias > Thanks, > Maxim. > > > >> Thanks, > >> Maxim. > >> > >> On 01/28/2016 10:03, Matias Elo wrote: > >>> Implements new DPDK pktio type, which operates in the same manner as > the > >>> existing ODP interface types. DPDK mbuf packets are copied during > >> receive/send > >>> to maintain compatibility with the linux-generic pktio. > >>> > >>> The current unoptimized DPDK pktio implementation achieves forwarding > rates > >>> (odp_l2fwd), which are comparable to netmap pktio and scale better with > >> larger > >>> thread counts. Some initial benchmark results below > >>> (odp_l2fwd 4 x 10 Gbps - 64B, Intel Xeon E5-2697v3). > >>> > >>> Threads > >>> 1 2 4 6 8 10 12 > >>> DPDK 6.7 12 25.3 37.2 47.6 47.3 46.8 MPPS > >>> Netmap 6.1 12.6 25.8 32.4 38.9 38.6 38.4 > >>> > >>> > >>> From 8 threads and onwards the throughput is limited by the NICs (Intel > >> 82599). > >>> Build and usage information can be found from DEPENDENCIES. The DPDK > >>> initialization code is copied from the odp-dpdk branch. > >>> > >>> Matias Elo (11): > >>> linux-generic: pktio: add DPDK pktio build support > >>> linux-generic: pktio: initial DPDK pktio implementation > >>> linux-generic: dpdk: add get/set functions for mtu, promisc mode, and > >>> capability > >>> linux-generic: dpdk: add rx/tx locking > >>> linux-generic: dpdk: add odp_pktio_link_status() > >>> linux-generic: dpdk: add dpdk_setup_port() > >>> linux-generic: dpdk: add functions for fetching packet input/output > >>> queues > >>> linux-generic: dpdk: add odp_pktio_input_queues_config() > >>> linux-generic: dpdk: add odp_pktio_output_queues_config() > >>> linux-generic: dpdk: handle ixgbe_pmd minimum burst size > >>> linux-generic: dpdk: close resources in odp_pktio_close() > >>> > >>> DEPENDENCIES | 54 ++ > >>> platform/linux-generic/Makefile.am | 2 + > >>> platform/linux-generic/include/odp_internal.h | 5 + > >>> platform/linux-generic/include/odp_packet_dpdk.h | 68 ++ > >>> .../linux-generic/include/odp_packet_io_internal.h | 3 + > >>> platform/linux-generic/m4/configure.m4 | 1 + > >>> platform/linux-generic/m4/odp_dpdk.m4 | 43 ++ > >>> platform/linux-generic/odp_init.c | 12 + > >>> platform/linux-generic/pktio/dpdk.c | 826 > +++++++++++++++++++++ > >>> platform/linux-generic/pktio/io_ops.c | 3 + > >>> 10 files changed, 1017 insertions(+) > >>> create mode 100644 platform/linux-generic/include/odp_packet_dpdk.h > >>> create mode 100644 platform/linux-generic/m4/odp_dpdk.m4 > >>> create mode 100644 platform/linux-generic/pktio/dpdk.c > >>> > >> _______________________________________________ > >> lng-odp mailing list > >> lng-odp@lists.linaro.org > >> https://lists.linaro.org/mailman/listinfo/lng-odp _______________________________________________ lng-odp mailing list lng-odp@lists.linaro.org https://lists.linaro.org/mailman/listinfo/lng-odp