From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga02.intel.com (mga02.intel.com [134.134.136.20]) by dpdk.org (Postfix) with ESMTP id A6877B47E for ; Wed, 18 Feb 2015 14:36:19 +0100 (CET) Received: from fmsmga002.fm.intel.com ([10.253.24.26]) by orsmga101.jf.intel.com with ESMTP; 18 Feb 2015 05:36:18 -0800 X-ExtLoop1: 1 X-IronPort-AV: E=Sophos;i="5.09,512,1418112000"; d="scan'208";a="679758243" Received: from irsmsx153.ger.corp.intel.com ([163.33.192.75]) by fmsmga002.fm.intel.com with ESMTP; 18 Feb 2015 05:36:16 -0800 Received: from irsmsx108.ger.corp.intel.com ([169.254.11.218]) by IRSMSX153.ger.corp.intel.com ([169.254.9.234]) with mapi id 14.03.0195.001; Wed, 18 Feb 2015 13:36:16 +0000 From: "De Lara Guarch, Pablo" To: "Wodkowski, PawelX" , "dev@dpdk.org" Thread-Topic: [PATCH v4 1/2] librte_headroom: New library for checking core/system/app load Thread-Index: AQHQStCmr51UC2P/4kCojy2VRlb7Kpz2aEzQ Date: Wed, 18 Feb 2015 13:36:15 +0000 Message-ID: References: <1424189986-26219-1-git-send-email-pawelx.wodkowski@intel.com> <1424191340-26451-1-git-send-email-pawelx.wodkowski@intel.com> <1424191340-26451-2-git-send-email-pawelx.wodkowski@intel.com> In-Reply-To: <1424191340-26451-2-git-send-email-pawelx.wodkowski@intel.com> Accept-Language: en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-originating-ip: [163.33.239.180] Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable MIME-Version: 1.0 Subject: Re: [dpdk-dev] [PATCH v4 1/2] librte_headroom: New library for checking core/system/app load X-BeenThere: dev@dpdk.org X-Mailman-Version: 2.1.15 Precedence: list List-Id: patches and discussions about DPDK List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 18 Feb 2015 13:36:20 -0000 Hi Pawel, A few things to fix in this patch: > -----Original Message----- > From: Wodkowski, PawelX > Sent: Tuesday, February 17, 2015 4:42 PM > To: dev@dpdk.org > Cc: De Lara Guarch, Pablo > Subject: [PATCH v4 1/2] librte_headroom: New library for checking > core/system/app load >=20 > This library provide API to measure time spend in particular parts of > code and to calculate optimal polling time. >=20 > To calculate a those statistics application code need to be devided into Typo in "devided" > parts (called jobs) that do something. It is up to application to decide > what is considered a job. >=20 > Series of jobs must be surrounded with the rte_headroom_start_loop() and > rte_headroom_finish_loop() calls. After that, jobs might be started. > Each job must be surrounded with rte_headroom_start_job() and > rte_headroom_finish_job() calls. >=20 > After job finish its execution, period in which it should be called Finishes > again is adjusted to minimize time wasted on unnecessary polls/calls. > Adjustmend is based on data provided by job itself (ex: number of > packets it processed). Adjustment >=20 > After all jobs in serie are executed fallowing statistics are updated > and might be used by application. Statistics can be reset. Some of > provided statistic data: > - total/min/max execution - time spent in executing jobs. > - total/min/max management - time spent outside execution area. This > value might used to measure overhead of sheduling jobs. This time also Be used, scheduling > contains overhead of headroom library itself. > - number of loops that executed at least one job > - executed jobs > - time when statistics were reset. >=20 > Each job provide total/min/max execution time and execution count > statistics. >=20 > Signed-off-by: Pawel Wodkowski > --- > config/common_bsdapp | 5 + > config/common_linuxapp | 5 + > lib/Makefile | 1 + > lib/librte_headroom/Makefile | 54 +++++ > lib/librte_headroom/rte_headroom.c | 271 > ++++++++++++++++++++++ > lib/librte_headroom/rte_headroom.h | 324 > +++++++++++++++++++++++++++ > lib/librte_headroom/rte_headroom_version.map | 20 ++ > 7 files changed, 680 insertions(+) > create mode 100644 lib/librte_headroom/Makefile > create mode 100644 lib/librte_headroom/rte_headroom.c > create mode 100644 lib/librte_headroom/rte_headroom.h > create mode 100644 lib/librte_headroom/rte_headroom_version.map >=20 [...] > diff --git a/lib/librte_headroom/rte_headroom_version.map > b/lib/librte_headroom/rte_headroom_version.map > new file mode 100644 > index 0000000..1f20016 > --- /dev/null > +++ b/lib/librte_headroom/rte_headroom_version.map > @@ -0,0 +1,20 @@ > +DPDK_2.0 { > + global: > + > + rte_headroom_init; > + rte_headroom_start_loop; > + rte_headroom_finish_loop; > + rte_headroom_job_init; > + rte_headroom_set_job_target; > + rte_headroom_start_job; > + rte_headroom_finish_job; > + rte_headroom_job_set_period; > + rte_headroom_set_min_period; > + rte_headroom_set_max_period; > + rte_headroom_set_update_period_function; > + rte_headroom_reset_job_stats; > + rte_headroom_reset_stats; > + Trailing whitespaces here. > + local: *; > +}; > + Trailing whitespaces here. > \ No newline at end of file > -- > 1.9.1