More results with odp_generator in lava setup:

 7.6 mpps  (TX) /  5.9 mpps (RX) - api-next with PR313 (Petri):
 8.3 mpps  (TX) /  6.3 mpps (RX) - api-next with PR313 (Petri) +
remove 1m sleep + replace atomic counters
14.8 mpps (TX) /  6.5 mpps (RX) - api-next with PR313 (Petri) + remove
1m sleep + replace atomic counters + remove csum
calculation/validation
14.8 mpps (TX) /  6.8 mpps (RX) - master with PR327 (remove 1m sleep +
replace atomic counters + remove csum calculation/validation)

/Bogdan


On 6 December 2017 at 13:49, Maxim Uvarov <maxim.uva...@linaro.org> wrote:
> small update. Double checked that increasing num of desc does not give any
> effect in odp_generator.
>
> Disable check sums in odp_generator increases TX from 7M to 13M pps and RX
> from 5.9M to 6.1M pps.
> Because of generator uses predefined packets with calculated checksum -
> there is no need to enable checksum inside generator.
>
> It looks like problem inside DPDK driver itself.
>
> For this PR I think we need to merge it together with changes to
> odp_generator (the same as for l2fwd) to enable hw check sum,
> which has to be disabled by default.
>
> Maxim.
>
>
> On 6 December 2017 at 10:46, Maxim Uvarov <maxim.uva...@linaro.org> wrote:
>>
>> skip this message. I will recheck. Pushed to lava wrong branch.
>>
>> On 6 December 2017 at 10:42, Maxim Uvarov <maxim.uva...@linaro.org> wrote:
>>>
>>> Ilias was right yesterday. If number of descriptors increased to 1024
>>> then TX became again 10M.
>>>
>>> +               ret = rte_eth_tx_queue_setup(port_id, i,
>>> +                                            dev_info.tx_desc_lim.nb_max
>>> > 1024 ? 1024 : dev_info.tx_desc_lim.nb_max,
>>>
>>> rte_eth_dev_socket_id(port_id),
>>>                                              txconf);
>>>
>>> +               ret = rte_eth_rx_queue_setup(port_id, i,
>>> +                                            dev_info.rx_desc_lim.nb_max
>>> > 1024 ? 1024 : dev_info.rx_desc_lim.nb_max,
>>>
>>> rte_eth_dev_socket_id(port_id),
>>>                                              NULL, pkt_dpdk->pkt_pool);
>>>
>>>
>>>
>>>
>>> Maxim.
>>>
>>> On 5 December 2017 at 11:20, Elo, Matias (Nokia - FI/Espoo)
>>> <matias....@nokia.com> wrote:
>>>>
>>>> When I tested enabling HW checksum with Fortville NICs (i40e) the slower
>>>> driver path alone caused ~20% throughput drop on l2fwd test. This was
>>>> without actually calculating the checksums, I simply forced the slower
>>>> driver path (no vectorization).
>>>>
>>>> -Matias
>>>>
>>>>
>>>> > On 5 Dec 2017, at 8:59, Bogdan Pricope <bogdan.pric...@linaro.org>
>>>> > wrote:
>>>> >
>>>> > On RX side is kind-of expected result since it uses scheduler mode.
>>>> >
>>>> > On TX side there is this drop from 10 mpps to 7.69 mpps that is
>>>> > unexpected.
>>>> >
>>>> > So Petri, when you said:
>>>> > "DPDK uses less optimized driver code (on Intel NICs at least) when
>>>> > any of the L4 checksum offloads is enabled."
>>>> >
>>>> > you were referring to this kind of drop in performance?
>>>> >
>>>> > There is that 'folklore' that SW csum is faster on small packets while
>>>> > HW csum is faster on bigger packets. Do you have this kind of data?
>>>> >
>>>> > Anyway, for this particular case (odp_generator), since UDP
>>>> > header/payload is not changing during the test (for now), csum is
>>>> > calculated only once at the beginning of the test: so we are comparing
>>>> > HW IPv4 + HW UDP csum vs. SW IPv4 csum.... yet, the differences in
>>>> > performance is huge...
>>>> >
>>>> >
>>>> > On 4 December 2017 at 20:37, Maxim Uvarov <maxim.uva...@linaro.org>
>>>> > wrote:
>>>> >> I added isocpus and mounted huge page TX became more stable at 7.6M.
>>>> >> But
>>>> >> anyway it's better to test performance for this PR because previous
>>>> >> speed was 10M.
>>>> >>
>>>> >> Maxim.
>>>> >>
>>>> >> On 12/04/17 19:42, Honnappa Nagarahalli wrote:
>>>> >>> Can you run with Linux-DPDK in ODP 2.0?
>>>> >>>
>>>> >>> On 4 December 2017 at 09:54, Maxim Uvarov <maxim.uva...@linaro.org>
>>>> >>> wrote:
>>>> >>>> after clean patches apply and fix in run scripts I made it run.
>>>> >>>>
>>>> >>>> But results is really bad. --enable-dpdk-zero-copy
>>>> >>>>
>>>> >>>> TX rate is:
>>>> >>>> 7673155 pps
>>>> >>>>
>>>> >>>> RX rate is:
>>>> >>>> 5989846 pps
>>>> >>>>
>>>> >>>>
>>>> >>>> Before patch PR 313 TX was 10M pps.
>>>> >>>>
>>>> >>>> I re run task and TX is 3.3M pps. All tests are single core. So
>>>> >>>> something strange happens in lava or this PR.
>>>> >>>>
>>>> >>>> Maxim.
>>>> >>>>
>>>> >>>>
>>>> >>>> On 12/04/17 17:03, Bogdan Pricope wrote:
>>>> >>>>> On TX (https://lng.validation.linaro.org/scheduler/job/23252.0) I
>>>> >>>>> see:
>>>> >>>>>
>>>> >>>>> ODP_REPO='https://github.com/muvarov/odp'
>>>> >>>>> ODP_BRANCH='api-next'
>>>> >>>>>
>>>> >>>>>
>>>> >>>>> On RX (https://lng.validation.linaro.org/scheduler/job/23252.1) I
>>>> >>>>> see:
>>>> >>>>>
>>>> >>>>> ODP_REPO='https://github.com/muvarov/odp'
>>>> >>>>> ODP_BRANCH='devel/api-next_shsum'
>>>> >>>>>
>>>> >>>>>
>>>> >>>>> or are you referring to other test?
>>>> >>>>>
>>>> >>>>>
>>>> >>>>> On 4 December 2017 at 15:53, Maxim Uvarov
>>>> >>>>> <maxim.uva...@linaro.org> wrote:
>>>> >>>>>>
>>>> >>>>>>
>>>> >>>>>> On 4 December 2017 at 15:11, Bogdan Pricope
>>>> >>>>>> <bogdan.pric...@linaro.org>
>>>> >>>>>> wrote:
>>>> >>>>>>>
>>>> >>>>>>> You need to put 313 on TX side (not RX).
>>>> >>>>>>
>>>> >>>>>>
>>>> >>>>>>
>>>> >>>>>> both rx and tx have patches from 313. l2fwd works on recv side.
>>>> >>>>>> Generator
>>>> >>>>>> does not work.
>>>> >>>>>>
>>>> >>>>>> Maxim.
>>>> >>>>>>
>>>> >>>>>>
>>>> >>>>>>>
>>>> >>>>>>>
>>>> >>>>>>> On 4 December 2017 at 13:19, Savolainen, Petri (Nokia -
>>>> >>>>>>> FI/Espoo)
>>>> >>>>>>> <petri.savolai...@nokia.com> wrote:
>>>> >>>>>>>> Is the DPDK version 17.08 ? Other versions might not work
>>>> >>>>>>>> properly.
>>>> >>>>>>>>
>>>> >>>>>>>>
>>>> >>>>>>>>
>>>> >>>>>>>> -Petri
>>>> >>>>>>>>
>>>> >>>>>>>>
>>>> >>>>>>>>
>>>> >>>>>>>> From: Maxim Uvarov [mailto:maxim.uva...@linaro.org]
>>>> >>>>>>>> Sent: Monday, December 04, 2017 1:10 PM
>>>> >>>>>>>> To: Savolainen, Petri (Nokia - FI/Espoo)
>>>> >>>>>>>> <petri.savolai...@nokia.com>
>>>> >>>>>>>> Cc: Bogdan Pricope <bogdan.pric...@linaro.org>; lng-odp-forward
>>>> >>>>>>>> <lng-odp@lists.linaro.org>
>>>> >>>>>>>>
>>>> >>>>>>>>
>>>> >>>>>>>> Subject: Re: [lng-odp] odp dpdk
>>>> >>>>>>>>
>>>> >>>>>>>>
>>>> >>>>>>>>
>>>> >>>>>>>> 313 does not work also:
>>>> >>>>>>>>
>>>> >>>>>>>> https://lng.validation.linaro.org/scheduler/job/23242.1
>>>> >>>>>>>>
>>>> >>>>>>>> I will replace RX side to l2fwd and see that will be there.
>>>> >>>>>>>>
>>>> >>>>>>>> Maxim.
>>>> >>>>>>>>
>>>> >>>>>>>>
>>>> >>>>>>>>
>>>> >>>>>>>>
>>>> >>>>>>>>
>>>> >>>>>>>> On 4 December 2017 at 13:46, Savolainen, Petri (Nokia -
>>>> >>>>>>>> FI/Espoo)
>>>> >>>>>>>> <petri.savolai...@nokia.com> wrote:
>>>> >>>>>>>>
>>>> >>>>>>>> Maxim, try https://github.com/Linaro/odp/pull/313 It has been
>>>> >>>>>>>> tested to
>>>> >>>>>>>> fix
>>>> >>>>>>>> checksum insert for 10/40GE Intel NICs.
>>>> >>>>>>>>
>>>> >>>>>>>> -Petri
>>>> >>>>>>>>
>>>> >>>>>>>>
>>>> >>>>>>>>> -----Original Message-----
>>>> >>>>>>>>> From: lng-odp [mailto:lng-odp-boun...@lists.linaro.org] On
>>>> >>>>>>>>> Behalf Of
>>>> >>>>>>>>> Bogdan Pricope
>>>> >>>>>>>>> Sent: Monday, December 04, 2017 12:21 PM
>>>> >>>>>>>>> To: Maxim Uvarov <maxim.uva...@linaro.org>
>>>> >>>>>>>>> Cc: lng-odp-forward <lng-odp@lists.linaro.org>
>>>> >>>>>>>>> Subject: Re: [lng-odp] odp dpdk
>>>> >>>>>>>>>
>>>> >>>>>>>>> I suspect this is actually caused by csum issue in TX side: on
>>>> >>>>>>>>> RX,
>>>> >>>>>>>>> socket pktio does not validate csum (and accept the packets)
>>>> >>>>>>>>> but on
>>>> >>>>>>>>> dpdk pktio the csum is validated and packets are dropped.
>>>> >>>>>>>>>
>>>> >>>>>>>>> I am not seeing this in my setup because default txq_flags for
>>>> >>>>>>>>> igb
>>>> >>>>>>>>> driver (1G interface) is
>>>> >>>>>>>>>
>>>> >>>>>>>>> .txq_flags = 0
>>>> >>>>>>>>>
>>>> >>>>>>>>> while for ixgbe (10G interface) is:
>>>> >>>>>>>>>
>>>> >>>>>>>>> .txq_flags = ETH_TXQ_FLAGS_NOMULTSEGS |
>>>> >>>>>>>>>                ETH_TXQ_FLAGS_NOOFFLOADS,
>>>> >>>>>>>>>
>>>> >>>>>>>>>
>>>> >>>>>>>>> /B
>>>> >>>>>>>>>
>>>> >>>>>>>>>
>>>> >>>>>>>>>
>>>> >>>>>>>>>
>>>> >>>>>>>>> On 1 December 2017 at 23:47, Maxim Uvarov
>>>> >>>>>>>>> <maxim.uva...@linaro.org>
>>>> >>>>>>>>> wrote:
>>>> >>>>>>>>>>
>>>> >>>>>>>>>> Looking to dpdk pktio support and generator. It looks like
>>>> >>>>>>>>>> receive
>>>> >>>>>>>>>> part
>>>> >>>>>>>>>> is broken. If for receive I use sockets it works well but
>>>> >>>>>>>>>> receive
>>>> >>>>>>>>>> with
>>>> >>>>>>>>>> dpdk does not get any packets. For both master and api-next.
>>>> >>>>>>>>>> Can
>>>> >>>>>>>>>> somebody confirm please that it's so. Lava is not supper
>>>> >>>>>>>>>> friendly to
>>>> >>>>>>>>>> debug issue.
>>>> >>>>>>>>>>
>>>> >>>>>>>>>>
>>>> >>>>>>>>>> 1. Recv
>>>> >>>>>>>>>> odp_generator -I 0 -m r -c 0x4
>>>> >>>>>>>>>>
>>>> >>>>>>>>>> https://lng.validation.linaro.org/scheduler/job/23206.1
>>>> >>>>>>>>>> Network devices using DPDK-compatible driver
>>>> >>>>>>>>>> ============================================
>>>> >>>>>>>>>> 0000:07:00.1 '82599ES 10-Gigabit SFI/SFP+ Network Connection
>>>> >>>>>>>>>> 10fb'
>>>> >>>>>>>>>> drv=igb_uio unused=
>>>> >>>>>>>>>>
>>>> >>>>>>>>>>
>>>> >>>>>>>>>>
>>>> >>>>>>>>>> 2. Send
>>>> >>>>>>>>>> odp_generator -I 0 --srcmac 38:ea:a7:93:98:94 --dstmac
>>>> >>>>>>>>>> 38:ea:a7:93:83:a0
>>>> >>>>>>>>>> --srcip 192.168.100.2 --dstip 192.168.100.1 -m u -i 0 -c 0x8
>>>> >>>>>>>>>> -p 18 -e
>>>> >>>>>>>>>> 5000 -f 5001 -n 800000000
>>>> >>>>>>>>>>
>>>> >>>>>>>>>> https://lng.validation.linaro.org/scheduler/job/23206.0
>>>> >>>>>>>>>>
>>>> >>>>>>>>>> Thank you,
>>>> >>>>>>>>>> Maxim.
>>>> >>>>>>>>
>>>> >>>>>>>>
>>>> >>>>>>
>>>> >>>>>>
>>>> >>>>
>>>> >>
>>>>
>>>
>>
>

Reply via email to