DPDK patches and discussions
 help / color / mirror / Atom feed
From: "Carrillo, Erik G" <erik.g.carrillo@intel.com>
To: Pavan Nikhilesh <pbhagavatula@caviumnetworks.com>,
	"jerin.jacob@caviumnetworks.com" <jerin.jacob@caviumnetworks.com>,
	"santosh.shukla@caviumnetworks.com"
	<santosh.shukla@caviumnetworks.com>
Cc: "dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [dpdk-dev] [PATCH 1/4] app/eventdev: add event timer adapter as a producer
Date: Fri, 30 Mar 2018 19:50:42 +0000	[thread overview]
Message-ID: <BE54F058557D9A4FAC1D84E2FC6D87570EE0A376@fmsmsx115.amr.corp.intel.com> (raw)
In-Reply-To: <20180318131216.11699-1-pbhagavatula@caviumnetworks.com>

Hi Pavan,

Some comments in-line:

> -----Original Message-----
> From: Pavan Nikhilesh [mailto:pbhagavatula@caviumnetworks.com]
> Sent: Sunday, March 18, 2018 8:12 AM
> To: jerin.jacob@caviumnetworks.com;
> santosh.shukla@caviumnetworks.com; Carrillo, Erik G
> <erik.g.carrillo@intel.com>
> Cc: dev@dpdk.org; Pavan Nikhilesh <pbhagavatula@caviumnetworks.com>
> Subject: [dpdk-dev] [PATCH 1/4] app/eventdev: add event timer adapter as
> a producer
> 
> Add event timer adapter as producer option that can be selected by passing -
> -prod_type_timerdev.
> 
> Signed-off-by: Pavan Nikhilesh <pbhagavatula@caviumnetworks.com>
> ---

<...snipped...>

> diff --git a/app/test-eventdev/test_perf_common.c b/app/test-
> eventdev/test_perf_common.c
> index 59fa0a49e..6ae146d91 100644
> --- a/app/test-eventdev/test_perf_common.c
> +++ b/app/test-eventdev/test_perf_common.c
> @@ -72,6 +72,62 @@ perf_producer(void *arg)
>  	return 0;
>  }
> 
> +static inline int
> +perf_event_timer_producer(void *arg)
> +{
> +	struct prod_data *p  = arg;
> +	struct test_perf *t = p->t;
> +	struct evt_options *opt = t->opt;
> +	uint32_t flow_counter = 0;
> +	uint64_t count = 0;
> +	uint64_t arm_latency = 0;
> +	const uint8_t nb_timer_adptrs = opt->nb_timer_adptrs;
> +	const uint32_t nb_flows = t->nb_flows;
> +	const uint64_t nb_timers = opt->nb_timers;
> +	struct rte_mempool *pool = t->pool;
> +	struct perf_elt *m = NULL;
> +	struct rte_event_timer_adapter **adptr = t->timer_adptr;
> +	const struct rte_event_timer tim = {
> +		.ev.op = RTE_EVENT_OP_NEW,
> +		.ev.queue_id = p->queue_id,
> +		.ev.sched_type = t->opt->sched_type_list[0],
> +		.ev.priority = RTE_EVENT_DEV_PRIORITY_NORMAL,
> +		.ev.event_type =  RTE_EVENT_TYPE_TIMER,
> +		.timeout_ticks = opt->optm_bkt_tck_nsec ?
> +			(opt->nb_bkt_tcks * opt->bkt_tck_nsec) /
> +			opt->optm_bkt_tck_nsec : opt->nb_bkt_tcks,

We should also initialize .state = RTE_EVENT_TIMER_NOT_ARMED.

Also, would it be better to take the ceiling instead of the floor when scaling the ticks with:

((opt->nb_bkt_tcks * opt->bkt_tck_nsec) + opt->optm_bkt_tck_nsec - 1) / opt->optm_bkt_tck_nsec

If the fraction is less than one in the current form, then truncation would return 0, which at least in the case of the software impl would be treated as RTE_EVENT_TIMER_ERROR_TOOEARLY.

Thoughts?

Regards,
Gabriel

  parent reply	other threads:[~2018-03-30 19:50 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-03-18 13:12 Pavan Nikhilesh
2018-03-18 13:12 ` [dpdk-dev] [PATCH 2/4] app/eventdev: add burst mode for event timer adapter Pavan Nikhilesh
2018-03-30 19:54   ` Carrillo, Erik G
2018-03-18 13:12 ` [dpdk-dev] [PATCH 3/4] app/eventdev: add options to configure " Pavan Nikhilesh
2018-03-18 13:12 ` [dpdk-dev] [PATCH 4/4] doc: update test eventdev documentation Pavan Nikhilesh
2018-03-30 19:50 ` Carrillo, Erik G [this message]
2018-04-03 16:01 ` [dpdk-dev] [PATCH v2 1/4] app/eventdev: add event timer adapter as a producer Pavan Nikhilesh
2018-04-03 16:01   ` [dpdk-dev] [PATCH v2 2/4] app/eventdev: add burst mode for event timer adapter Pavan Nikhilesh
2018-04-04 21:07     ` Carrillo, Erik G
2018-04-03 16:01   ` [dpdk-dev] [PATCH v2 3/4] app/eventdev: add options to configure " Pavan Nikhilesh
2018-04-04 21:10     ` Carrillo, Erik G
2018-04-03 16:01   ` [dpdk-dev] [PATCH v2 4/4] doc: update test eventdev documentation Pavan Nikhilesh
2018-04-04 21:16     ` Carrillo, Erik G
2018-04-03 20:21   ` [dpdk-dev] [PATCH v2 1/4] app/eventdev: add event timer adapter as a producer Carrillo, Erik G
2018-04-04 21:20     ` Carrillo, Erik G
2018-04-05 11:53 ` [dpdk-dev] [PATCH v3 " Pavan Nikhilesh
2018-04-05 11:53   ` [dpdk-dev] [PATCH v3 2/4] app/eventdev: add burst mode for event timer adapter Pavan Nikhilesh
2018-04-06 11:11     ` Jerin Jacob
2018-04-05 11:53   ` [dpdk-dev] [PATCH v3 3/4] app/eventdev: add options to configure " Pavan Nikhilesh
2018-04-06 11:15     ` Jerin Jacob
2018-04-05 11:53   ` [dpdk-dev] [PATCH v3 4/4] doc: update test eventdev documentation Pavan Nikhilesh
2018-04-06 11:37     ` Jerin Jacob
2018-04-06 11:07   ` [dpdk-dev] [PATCH v3 1/4] app/eventdev: add event timer adapter as a producer Jerin Jacob
2018-04-06 11:18   ` Jerin Jacob
2018-04-06 14:55 ` [dpdk-dev] [PATCH v4 " Pavan Nikhilesh
2018-04-06 14:55   ` [dpdk-dev] [PATCH v4 2/4] app/eventdev: add burst mode for event timer adapter Pavan Nikhilesh
2018-04-06 14:55   ` [dpdk-dev] [PATCH v4 3/4] app/eventdev: add options to configure " Pavan Nikhilesh
2018-04-06 14:55   ` [dpdk-dev] [PATCH v4 4/4] doc: update test eventdev documentation Pavan Nikhilesh
2018-04-06 15:13 ` [dpdk-dev] [PATCH v5 1/4] app/eventdev: add event timer adapter as a producer Pavan Nikhilesh
2018-04-06 15:13   ` [dpdk-dev] [PATCH v5 2/4] app/eventdev: add burst mode for event timer adapter Pavan Nikhilesh
2018-04-06 15:13   ` [dpdk-dev] [PATCH v5 3/4] app/eventdev: add options to configure " Pavan Nikhilesh
2018-04-06 15:13   ` [dpdk-dev] [PATCH v5 4/4] doc: update test eventdev documentation Pavan Nikhilesh
2018-04-07  9:34   ` [dpdk-dev] [PATCH v5 1/4] app/eventdev: add event timer adapter as a producer Jerin Jacob
2018-04-17  8:18   ` Maxime Coquelin
2018-04-17  8:22     ` Pavan Nikhilesh
2018-04-17  8:24       ` Maxime Coquelin

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=BE54F058557D9A4FAC1D84E2FC6D87570EE0A376@fmsmsx115.amr.corp.intel.com \
    --to=erik.g.carrillo@intel.com \
    --cc=dev@dpdk.org \
    --cc=jerin.jacob@caviumnetworks.com \
    --cc=pbhagavatula@caviumnetworks.com \
    --cc=santosh.shukla@caviumnetworks.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).