All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ori Kam <orika@nvidia.com>
To: "guyk@marvell.com" <guyk@marvell.com>,
	"orika@mellanox.com" <orika@mellanox.com>
Cc: NBU-Contact-Thomas Monjalon <thomas@monjalon.net>,
	"smadarf@marvell.com" <smadarf@marvell.com>,
	"dev@dpdk.org" <dev@dpdk.org>
Subject: Re: [dpdk-dev] [PATCH v1] app/regex: change default qp configuration flags
Date: Mon, 19 Oct 2020 15:03:26 +0000	[thread overview]
Message-ID: <MN2PR12MB42864F0034E2371C538B9BB1D61E0@MN2PR12MB4286.namprd12.prod.outlook.com> (raw)
In-Reply-To: <20201019092630.20460-2-guyk@marvell.com>

Hi Guy,

> -----Original Message-----
> From: guyk@marvell.com <guyk@marvell.com>
> Sent: Monday, October 19, 2020 12:27 PM
> Subject: [PATCH v1] app/regex: change default qp configuration flags
> 
> From: Guy Kaneti <guyk@marvell.com>
> 
> By default qp configuration flags was set with
> RTE_REGEX_QUEUE_PAIR_CFG_OOS_F.
> Changed flags default to 0. In order to set OOS flag use
> new argument --cfg_oos to config queue pair out of order scan.
> 
> Signed-off-by: Guy Kaneti <guyk@marvell.com>
> ---
>  app/test-regex/main.c | 24 +++++++++++++++++-------
>  1 file changed, 17 insertions(+), 7 deletions(-)
> 
> diff --git a/app/test-regex/main.c b/app/test-regex/main.c
> index 0d35f4583..9b19031ea 100644
> --- a/app/test-regex/main.c
> +++ b/app/test-regex/main.c
> @@ -33,6 +33,7 @@ enum app_args {
>  	ARG_NUM_OF_JOBS,
>  	ARG_PERF_MODE,
>  	ARG_NUM_OF_ITERATIONS,
> +	ARG_CFG_OOS,
>  };
> 
>  static void
> @@ -43,13 +44,15 @@ usage(const char *prog_name)
>  		" --data NAME: data file to use\n"
>  		" --nb_jobs: number of jobs to use\n"
>  		" --perf N: only outputs the performance data\n"
> -		" --nb_iter N: number of iteration to run\n",
> +		" --nb_iter N: number of iteration to run\n"
> +		" --cfg_oos: configure regexdev queue flag out of order
> scan\n",
>  		prog_name);
>  }
> 
>  static void
>  args_parse(int argc, char **argv, char *rules_file, char *data_file,
> -	   uint32_t *nb_jobs, bool *perf_mode, uint32_t *nb_iterations)
> +	   uint32_t *nb_jobs, bool *perf_mode, uint32_t *nb_iterations,
> +	   uint32_t *qp_conf_flags)
>  {
>  	char **argvopt;
>  	int opt;
> @@ -66,7 +69,9 @@ args_parse(int argc, char **argv, char *rules_file, char
> *data_file,
>  		/* Perf test only */
>  		{ "perf", 0, 0, ARG_PERF_MODE},
>  		/* Number of iterations to run with perf test */
> -		{ "nb_iter", 1, 0, ARG_NUM_OF_ITERATIONS}
> +		{ "nb_iter", 1, 0, ARG_NUM_OF_ITERATIONS},
> +		/* configure out of order scan */
> +		{ "cfg_oos", 0, 0, ARG_CFG_OOS}
>  	};
> 
>  	argvopt = argv;
> @@ -98,6 +103,9 @@ args_parse(int argc, char **argv, char *rules_file, char
> *data_file,
>  		case ARG_NUM_OF_ITERATIONS:
>  			*nb_iterations = atoi(optarg);
>  			break;
> +		case ARG_CFG_OOS:
> +			*qp_conf_flags =
> RTE_REGEX_QUEUE_PAIR_CFG_OOS_F;
> +			break;
>  		case ARG_HELP:
>  			usage("RegEx test app");
>  			break;
> @@ -158,7 +166,8 @@ read_file(char *file, char **buf)
> 
>  static int
>  init_port(struct rte_mempool **mbuf_mp, uint32_t nb_jobs,
> -	  uint16_t *nb_max_payload, char *rules_file, uint8_t
> *nb_max_matches)
> +	  uint16_t *nb_max_payload, char *rules_file, uint8_t
> *nb_max_matches,
> +	  uint32_t qp_conf_flags)
>  {
>  	uint16_t id;
>  	uint16_t num_devs;
> @@ -171,7 +180,7 @@ init_port(struct rte_mempool **mbuf_mp, uint32_t
> nb_jobs,
>  	};
>  	struct rte_regexdev_qp_conf qp_conf = {
>  		.nb_desc = 1024,
> -		.qp_conf_flags = RTE_REGEX_QUEUE_PAIR_CFG_OOS_F,
> +		.qp_conf_flags = qp_conf_flags,
>  	};
>  	int res = 0;
> 
> @@ -407,6 +416,7 @@ main(int argc, char **argv)
>  	bool perf_mode = 0;
>  	uint32_t nb_iterations = 0;
>  	uint8_t nb_max_matches = 0;
> +	uint32_t qp_conf_flags = 0;
>  	int ret;
> 
>  	ret = rte_eal_init(argc, argv);
> @@ -416,10 +426,10 @@ main(int argc, char **argv)
>  	argv += ret;
>  	if (argc > 1)
>  		args_parse(argc, argv, rules_file, data_file, &nb_jobs,
> -			   &perf_mode, &nb_iterations);
> +			   &perf_mode, &nb_iterations, &qp_conf_flags);
> 
>  	ret = init_port(&mbuf_mp, nb_jobs, &nb_max_payload, rules_file,
> -			&nb_max_matches);
> +			&nb_max_matches, qp_conf_flags);
>  	if (ret < 0)
>  		rte_exit(EXIT_FAILURE, "init port failed\n");
>  	ret = run_regex(mbuf_mp, nb_jobs, nb_max_payload, perf_mode,
> --
> 2.28.0

General comment I think we should add 
capability to the rte_regexdev to check if the PMD support 
OOF. and have the default based on this capability.

Best,
Ori

  reply	other threads:[~2020-10-19 15:03 UTC|newest]

Thread overview: 6+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-10-19  9:26 [dpdk-dev] [PATCH] app/regex: change default qp configuration flags guyk
2020-10-19  9:26 ` [dpdk-dev] [PATCH v1] " guyk
2020-10-19 15:03   ` Ori Kam [this message]
2020-10-19 17:12     ` Guy Kaneti
2020-10-20  5:59       ` Ori Kam
2020-10-19  9:30 ` [dpdk-dev] [PATCH] " Guy Kaneti

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=MN2PR12MB42864F0034E2371C538B9BB1D61E0@MN2PR12MB4286.namprd12.prod.outlook.com \
    --to=orika@nvidia.com \
    --cc=dev@dpdk.org \
    --cc=guyk@marvell.com \
    --cc=orika@mellanox.com \
    --cc=smadarf@marvell.com \
    --cc=thomas@monjalon.net \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.