From mboxrd@z Thu Jan  1 00:00:00 1970
Return-Path: <cunming.liang@intel.com>
Received: from mga01.intel.com (mga01.intel.com [192.55.52.88])
 by dpdk.org (Postfix) with ESMTP id C39CA7F45
 for <dev@dpdk.org>; Wed, 29 Oct 2014 05:58:41 +0100 (CET)
Received: from fmsmga001.fm.intel.com ([10.253.24.23])
 by fmsmga101.fm.intel.com with ESMTP; 28 Oct 2014 22:07:30 -0700
X-ExtLoop1: 1
X-IronPort-AV: E=Sophos;i="5.04,808,1406617200"; d="scan'208";a="613207213"
Received: from pgsmsx101.gar.corp.intel.com ([10.221.44.78])
 by fmsmga001.fm.intel.com with ESMTP; 28 Oct 2014 22:07:26 -0700
Received: from pgsmsx106.gar.corp.intel.com (10.221.44.98) by
 PGSMSX101.gar.corp.intel.com (10.221.44.78) with Microsoft SMTP Server (TLS)
 id 14.3.195.1; Wed, 29 Oct 2014 13:06:07 +0800
Received: from shsmsx101.ccr.corp.intel.com (10.239.4.153) by
 pgsmsx106.gar.corp.intel.com (10.221.44.98) with Microsoft SMTP Server (TLS)
 id 14.3.195.1; Wed, 29 Oct 2014 13:06:07 +0800
Received: from shsmsx102.ccr.corp.intel.com ([169.254.2.156]) by
 SHSMSX101.ccr.corp.intel.com ([169.254.1.202]) with mapi id 14.03.0195.001;
 Wed, 29 Oct 2014 13:06:06 +0800
From: "Liang, Cunming" <cunming.liang@intel.com>
To: Thomas Monjalon <thomas.monjalon@6wind.com>
Thread-Topic: [PATCH v6 0/3] app/test: unit test to measure cycles per packet
Thread-Index: AQHP8YQyJLpMYWhxfUK7fDekpeQoM5xGhkIQ
Date: Wed, 29 Oct 2014 05:06:05 +0000
Message-ID: <D0158A423229094DA7ABF71CF2FA0DA311853E3D@shsmsx102.ccr.corp.intel.com>
References: <1414130282-17981-1-git-send-email-cunming.liang@intel.com>
 <1414372809-14044-1-git-send-email-cunming.liang@intel.com>
In-Reply-To: <1414372809-14044-1-git-send-email-cunming.liang@intel.com>
Accept-Language: zh-CN, en-US
Content-Language: en-US
X-MS-Has-Attach: 
X-MS-TNEF-Correlator: 
x-originating-ip: [10.239.127.40]
Content-Type: text/plain; charset="us-ascii"
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
Cc: "dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [dpdk-dev] [PATCH v6 0/3] app/test: unit test to measure cycles
	per packet
X-BeenThere: dev@dpdk.org
X-Mailman-Version: 2.1.15
Precedence: list
List-Id: patches and discussions about DPDK <dev.dpdk.org>
List-Unsubscribe: <http://dpdk.org/ml/options/dev>,
 <mailto:dev-request@dpdk.org?subject=unsubscribe>
List-Archive: <http://dpdk.org/ml/archives/dev/>
List-Post: <mailto:dev@dpdk.org>
List-Help: <mailto:dev-request@dpdk.org?subject=help>
List-Subscribe: <http://dpdk.org/ml/listinfo/dev>,
 <mailto:dev-request@dpdk.org?subject=subscribe>
X-List-Received-Date: Wed, 29 Oct 2014 04:58:43 -0000

Hi Thomas,

All the open issues from the former patches are closed.
Could you please have a look and get it applied ?

-Liang Cunming

> -----Original Message-----
> From: Liang, Cunming
> Sent: Monday, October 27, 2014 9:20 AM
> To: dev@dpdk.org
> Cc: nhorman@tuxdriver.com; Ananyev, Konstantin; Richardson, Bruce; De Lar=
a
> Guarch, Pablo; Liang, Cunming
> Subject: [PATCH v6 0/3] app/test: unit test to measure cycles per packet
>=20
> v6 update:
> # leave FUNC_PTR_OR_*_RET unmodified
>=20
> v5 update:
> # fix the confusing of retval in some API of rte_ethdev
>=20
> v4 ignore
>=20
> v3 update:
> # Codes refine according to the feedback.
>   1. add ether_format_addr to rte_ether.h
>   2. fix typo in code comments.
>   3. %lu to %PRIu64, fixing 32-bit targets compilation err
> # merge 2 small incremental patches to the first one.
>   The whole unit test as a single patch in [PATCH v3 2/2]
> # rebase code to the latest master
>=20
> v2 update:
> Rebase code to the latest master branch.
>=20
> It provides unit test to measure cycles/packet in NIC loopback mode.
> It simply gives the average cycles of IO used per packet without test equ=
ipment.
> When doing the test, make sure the link is UP.
>=20
> There's two stream control mode support, one is continues, another is bur=
st.
> The former continues to forward the injected packets until reaching a cer=
tain
> amount of number.
> The latter one stop when all the injected packets are received.
> In burst stream, now measure two situations, with or without desc. cache =
conflict.
> By default, it runs in continues stream mode to measure the whole rxtx.
>=20
> Usage Example:
> 1. Run unit test app in interactive mode
>     app/test -c f -n 4 -- -i
> 2. Set stream control mode, by default is continuous
>     set_rxtx_sc [continuous|poll_before_xmit|poll_after_xmit]
> 3. If choose continuous stream, there are another two options can configu=
re
>     3.1 choose rx/tx pair, default is vector
>         set_rxtx_mode [vector|scalar|full|hybrid]
>         Note: To get acurate scalar fast, plz choose 'vector' or 'hybrid'=
 without
> INC_VEC=3Dy in config
>     3.2 choose the area of masurement, default is rxtx
>         set_rxtx_anchor [rxtx|rxonly|txonly]
> 4. Run and wait for the result
>     pmd_perf_autotest
>=20
> For who simply just want to see how much cycles cost per packet.
> Compile DPDK, Run 'app/test', and type 'pmd_perf_autotest', that's it.
> Nothing else needs to configure.
> Using other options when you understand and what to measures more.
>=20
>=20
> BTW, [1/3] is the same patch as below one.
> http://dpdk.org/dev/patchwork/patch/817
>=20
> *** BLURB HERE ***
>=20
> Cunming Liang (3):
>   app/test: allow to create packets in different sizes
>   app/test: measure the cost of rx/tx routines by cycle number
>   ethdev: fix wrong error return refer to API definition
>=20
>  app/test/Makefile                   |    1 +
>  app/test/commands.c                 |  111 +++++
>  app/test/packet_burst_generator.c   |   26 +-
>  app/test/packet_burst_generator.h   |   11 +-
>  app/test/test.h                     |    6 +
>  app/test/test_link_bonding.c        |   39 +-
>  app/test/test_pmd_perf.c            |  922
> +++++++++++++++++++++++++++++++++++
>  lib/librte_ether/rte_ethdev.c       |    6 +-
>  lib/librte_ether/rte_ether.h        |   25 +
>  lib/librte_pmd_ixgbe/ixgbe_ethdev.c |    6 +
>  10 files changed, 1117 insertions(+), 36 deletions(-)
>  create mode 100644 app/test/test_pmd_perf.c
>=20
> --
> 1.7.4.1