From: Thomas Monjalon <thomas@monjalon.net>
To: Pavan Nikhilesh Bhagavatula <pbhagavatula@marvell.com>
Cc: Ori Kam <orika@mellanox.com>,
Jerin Jacob Kollanukkaran <jerinj@marvell.com>,
"xiang.w.wang@intel.com" <xiang.w.wang@intel.com>,
"dev@dpdk.org" <dev@dpdk.org>,
Shahaf Shuler <shahafs@mellanox.com>,
"hemant.agrawal@nxp.com" <hemant.agrawal@nxp.com>,
Opher Reviv <opher@mellanox.com>,
Alex Rosenbaum <alexr@mellanox.com>,
Dovrat Zifroni <dovrat@marvell.com>,
Prasun Kapoor <pkapoor@marvell.com>,
"nipun.gupta@nxp.com" <nipun.gupta@nxp.com>,
"bruce.richardson@intel.com" <bruce.richardson@intel.com>,
"yang.a.hong@intel.com" <yang.a.hong@intel.com>,
"harry.chang@intel.com" <harry.chang@intel.com>,
"gu.jian1@zte.com.cn" <gu.jian1@zte.com.cn>,
"shanjiangh@chinatelecom.cn" <shanjiangh@chinatelecom.cn>,
"zhangy.yun@chinatelecom.cn" <zhangy.yun@chinatelecom.cn>,
"lixingfu@huachentel.com" <lixingfu@huachentel.com>,
"wushuai@inspur.com" <wushuai@inspur.com>,
"yuyingxia@yxlink.com" <yuyingxia@yxlink.com>,
"fanchenggang@sunyainfo.com" <fanchenggang@sunyainfo.com>,
"davidfgao@tencent.com" <davidfgao@tencent.com>,
"liuzhong1@chinaunicom.cn" <liuzhong1@chinaunicom.cn>,
"zhaoyong11@huawei.com" <zhaoyong11@huawei.com>,
"oc@yunify.com" <oc@yunify.com>,
"jim@netgate.com" <jim@netgate.com>,
"hongjun.ni@intel.com" <hongjun.ni@intel.com>,
"j.bromhead@titan-ic.com" <j.bromhead@titan-ic.com>,
"deri@ntop.org" <deri@ntop.org>,
"fc@napatech.com" <fc@napatech.com>,
"arthur.su@lionic.com" <arthur.su@lionic.com>,
"david.marchand@redhat.com" <david.marchand@redhat.com>
Subject: Re: [dpdk-dev] [EXT] [PATCH v1 4/4] regexdev: implement regex rte level functions
Date: Mon, 06 Apr 2020 15:36:30 +0200 [thread overview]
Message-ID: <1620573.TTEOE9XjLl@xps> (raw)
In-Reply-To: <CY4PR1801MB186384B7291B652AC5A0BC94DEC20@CY4PR1801MB1863.namprd18.prod.outlook.com>
06/04/2020 15:22, Pavan Nikhilesh Bhagavatula:
> >06/04/2020 14:33, Pavan Nikhilesh Bhagavatula:
> >> >> From: Pavan Nikhilesh Bhagavatula
> >> >> > >+uint16_t
> >> >> > >+rte_regexdev_enqueue_burst(uint8_t dev_id, uint16_t
> >qp_id,
> >> >> > >+ struct rte_regex_ops **ops, uint16_t
> >nb_ops)
> >> >> > >+{
> >> >> > >+ return regex_devices[dev_id]-
> >> >> > >>enqueue(regex_devices[dev_id], qp_id,
> >> >> > >+ ops, nb_ops);
> >> >> > >+}
> >> >> >
> >> >> > Move these functions to .h in-lining them.
> >> >> > Also, please add debug checks @see
> >> >rte_eth_rx_burst/rte_eth_tx_burst.
> >> >>
> >> >> O.K will update.
> >> >
> >> >In general, inlining is a pain for ABI compatibility.
> >> >Please inline only if the gain is very significant.
> >> >
> >>
> >> The performance gain mostly comes from hoisting
> >`regex_devices[dev_id]` load above the
> >> poll loop.
> >> Since, the performance measurement application is still in pipeline
> >and regexdev would be
> >> experimental for next couple of releases I suggest inlining it now and
> >worrying about ABI when
> >> experimental tag needs to be removed.
> >
> >No, we must worry about ABI from the beginning.
>
> I though performance was the primary objective :-).
It is.
> >> We can follow the same path as done by ethdev
> >[https://urldefense.proofpoint.com/v2/url?u=https-3A__www.mail-
> >2Darchive.com_dev-
> >40dpdk.org_msg142392.html&d=DwICAg&c=nKjWec2b6R0mOyPaz7xtf
> >Q&r=E3SgYMjtKCMVsB-fmvgGV3o-
> >g_fjLhk5Pupi9ijohpc&m=7Gqb6WKmZV5uY3xa7FRVrRVDz8Usrsd-
> >rDjIKr6CUQQ&s=sQo2Kx9fzTNXwiQ2Fzki3s5GSuiiAEzz2VtN68_KKXo&e=
> >]
> >
> >ethdev is not an argument.
>
> What about ring? [http://mails.dpdk.org/archives/dev/2020-April/161506.html]
>
> Why do we need to prove the same performance advantage using in-lining for datapath
> critical functions again and again?
Because every libraries have not the same usage and load.
We should compare how much cycle is saved with inline vs
how much cycles is, "in average", a regex burst?
If you tell me regex processing is fast, OK, let's inline.
next prev parent reply other threads:[~2020-04-06 13:36 UTC|newest]
Thread overview: 96+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-03-29 6:47 [dpdk-dev] [PATCH v1 0/4] add RegEx class Ori Kam
2020-03-29 6:47 ` [dpdk-dev] [PATCH v1 1/4] regexdev: introduce regexdev subsystem Ori Kam
2020-04-04 15:04 ` [dpdk-dev] [EXT] " Pavan Nikhilesh Bhagavatula
2020-04-05 15:03 ` Ori Kam
2020-03-29 6:47 ` [dpdk-dev] [PATCH v1 2/4] regexdev: add regex core h file Ori Kam
[not found] ` <DM5PR18MB221411AAEAFFA9D9F373292BC6C20@DM5PR18MB2214.namprd18.prod.outlook.com>
2020-04-07 8:53 ` Guy Kaneti
2020-04-07 16:16 ` Ori Kam
2020-04-07 16:27 ` Jerin Jacob
2020-04-08 7:37 ` Ori Kam
2020-04-08 7:48 ` Jerin Jacob
2020-04-08 8:31 ` Ori Kam
2020-04-08 8:38 ` Jerin Jacob
2020-04-08 9:51 ` Ori Kam
2020-03-29 6:47 ` [dpdk-dev] [PATCH v1 3/4] regexdev: add regexdev core functions Ori Kam
2020-04-04 15:01 ` [dpdk-dev] [EXT] " Pavan Nikhilesh Bhagavatula
2020-04-05 15:05 ` Ori Kam
2020-04-05 17:10 ` Pavan Nikhilesh Bhagavatula
2020-04-05 20:02 ` Ori Kam
2020-04-06 12:48 ` Pavan Nikhilesh Bhagavatula
2020-04-06 13:29 ` Thomas Monjalon
2020-04-06 13:38 ` Jerin Jacob
2020-04-06 19:11 ` Ori Kam
2020-04-07 5:49 ` Jerin Jacob
2020-04-07 6:46 ` Ori Kam
2020-04-07 7:22 ` Jerin Jacob
2020-04-07 12:27 ` Thomas Monjalon
2020-04-07 12:54 ` Jerin Jacob
2020-04-07 14:21 ` Guy Kaneti
2020-04-07 16:28 ` Ori Kam
2020-04-07 16:37 ` Guy Kaneti
2020-04-08 6:52 ` Ori Kam
2020-04-08 8:39 ` Ori Kam
2020-04-19 10:38 ` Guy Kaneti
2020-04-22 21:36 ` Ori Kam
2020-04-08 9:41 ` Ori Kam
2020-03-29 6:47 ` [dpdk-dev] [PATCH v1 4/4] regexdev: implement regex rte level functions Ori Kam
2020-04-04 14:27 ` [dpdk-dev] [EXT] " Pavan Nikhilesh Bhagavatula
2020-04-05 15:04 ` Ori Kam
2020-04-05 16:48 ` Pavan Nikhilesh Bhagavatula
2020-04-05 19:46 ` Ori Kam
2020-04-06 11:16 ` Thomas Monjalon
2020-04-06 12:33 ` Pavan Nikhilesh Bhagavatula
2020-04-06 13:14 ` Thomas Monjalon
2020-04-06 13:20 ` Jerin Jacob
2020-04-06 13:22 ` Pavan Nikhilesh Bhagavatula
2020-04-06 13:36 ` Thomas Monjalon [this message]
2020-04-06 13:50 ` Pavan Nikhilesh Bhagavatula
2020-04-06 14:00 ` Thomas Monjalon
2020-04-06 18:53 ` Ori Kam
2020-04-04 13:06 ` [dpdk-dev] [EXT] [PATCH v1 0/4] add RegEx class Pavan Nikhilesh Bhagavatula
2020-04-05 15:03 ` Ori Kam
2020-04-17 12:43 ` [dpdk-dev] [PATCH v2 " Ori Kam
2020-04-17 12:43 ` [dpdk-dev] [PATCH v2 1/4] regexdev: introduce regexdev subsystem Ori Kam
2020-04-17 12:43 ` [dpdk-dev] [PATCH v2 2/4] regexdev: add regex core h file Ori Kam
2020-04-20 10:48 ` Guy Kaneti
2020-04-20 15:49 ` Ori Kam
2020-04-17 12:43 ` [dpdk-dev] [PATCH v2 3/4] regexdev: add regexdev core functions Ori Kam
2020-04-17 12:43 ` [dpdk-dev] [PATCH v2 4/4] regexdev: implement regex rte level functions Ori Kam
2020-04-21 11:12 ` Guy Kaneti
2020-04-21 11:20 ` Ori Kam
2020-04-21 11:36 ` Guy Kaneti
2020-04-22 20:33 ` Ori Kam
2020-05-07 9:45 ` [dpdk-dev] [PATCH v3 0/4] add RegEx class Ori Kam
2020-05-07 9:45 ` [dpdk-dev] [PATCH v3 1/4] regexdev: introduce regexdev subsystem Ori Kam
2020-06-21 11:18 ` Ori Kam
2020-06-30 19:57 ` Ori Kam
2020-05-07 9:45 ` [dpdk-dev] [PATCH v3 2/4] regexdev: add regex core h file Ori Kam
2020-06-03 6:47 ` [dpdk-dev] [EXT] " Guy Kaneti
2020-05-07 9:45 ` [dpdk-dev] [PATCH v3 3/4] regexdev: add regexdev core functions Ori Kam
2020-06-03 6:57 ` [dpdk-dev] [EXT] " Guy Kaneti
2020-05-07 9:45 ` [dpdk-dev] [PATCH v3 4/4] regexdev: implement regex rte level functions Ori Kam
2020-06-03 6:59 ` [dpdk-dev] [EXT] " Guy Kaneti
2020-06-28 13:45 ` Guy Kaneti
2020-06-28 14:10 ` Ori Kam
2020-05-24 20:24 ` [dpdk-dev] [PATCH v3 0/4] add RegEx class Ori Kam
2020-07-02 7:45 ` [dpdk-dev] [PATCH v4 " Ori Kam
2020-07-02 7:46 ` [dpdk-dev] [PATCH v4 1/4] regexdev: introduce regexdev subsystem Ori Kam
2020-07-05 21:18 ` Thomas Monjalon
2020-07-06 7:02 ` Ori Kam
2020-07-02 7:46 ` [dpdk-dev] [PATCH v4 2/4] regexdev: add regex core h file Ori Kam
2020-07-02 7:46 ` [dpdk-dev] [PATCH v4 3/4] regexdev: add regexdev core functions Ori Kam
2020-07-05 21:08 ` Thomas Monjalon
2020-07-06 6:07 ` Ori Kam
2020-07-06 7:03 ` Thomas Monjalon
2020-07-06 8:00 ` Bruce Richardson
2020-07-02 7:46 ` [dpdk-dev] [PATCH v4 4/4] regexdev: implement regex rte level functions Ori Kam
2020-07-05 21:21 ` [dpdk-dev] [PATCH v4 0/4] add RegEx class Thomas Monjalon
2020-07-06 7:03 ` Ori Kam
2020-07-06 17:36 ` [dpdk-dev] [PATCH v5 " Ori Kam
2020-07-06 17:36 ` [dpdk-dev] [PATCH v5 1/4] regexdev: introduce regexdev subsystem Ori Kam
2020-07-06 19:38 ` Thomas Monjalon
2020-09-11 12:46 ` David Marchand
2020-07-06 17:36 ` [dpdk-dev] [PATCH v5 2/4] regexdev: add regex core h file Ori Kam
2020-07-06 17:36 ` [dpdk-dev] [PATCH v5 3/4] regexdev: add regexdev core functions Ori Kam
2020-07-06 17:36 ` [dpdk-dev] [PATCH v5 4/4] regexdev: implement regex rte level functions Ori Kam
2020-07-06 22:30 ` [dpdk-dev] [PATCH v5 0/4] add RegEx class Thomas Monjalon
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=1620573.TTEOE9XjLl@xps \
--to=thomas@monjalon.net \
--cc=alexr@mellanox.com \
--cc=arthur.su@lionic.com \
--cc=bruce.richardson@intel.com \
--cc=david.marchand@redhat.com \
--cc=davidfgao@tencent.com \
--cc=deri@ntop.org \
--cc=dev@dpdk.org \
--cc=dovrat@marvell.com \
--cc=fanchenggang@sunyainfo.com \
--cc=fc@napatech.com \
--cc=gu.jian1@zte.com.cn \
--cc=harry.chang@intel.com \
--cc=hemant.agrawal@nxp.com \
--cc=hongjun.ni@intel.com \
--cc=j.bromhead@titan-ic.com \
--cc=jerinj@marvell.com \
--cc=jim@netgate.com \
--cc=liuzhong1@chinaunicom.cn \
--cc=lixingfu@huachentel.com \
--cc=nipun.gupta@nxp.com \
--cc=oc@yunify.com \
--cc=opher@mellanox.com \
--cc=orika@mellanox.com \
--cc=pbhagavatula@marvell.com \
--cc=pkapoor@marvell.com \
--cc=shahafs@mellanox.com \
--cc=shanjiangh@chinatelecom.cn \
--cc=wushuai@inspur.com \
--cc=xiang.w.wang@intel.com \
--cc=yang.a.hong@intel.com \
--cc=yuyingxia@yxlink.com \
--cc=zhangy.yun@chinatelecom.cn \
--cc=zhaoyong11@huawei.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).