From: Thomas Monjalon <thomas@monjalon.net>
To: Jerin Jacob <jerinjacobk@gmail.com>, dev@dpdk.org
Cc: "Jerin Jacob" <jerinj@marvell.com>, dpdk-dev <dev@dpdk.org>,
"Ferruh Yigit" <ferruh.yigit@xilinx.com>,
"Ajit Khaparde" <ajit.khaparde@broadcom.com>,
"Andrew Boyer" <aboyer@pensando.io>,
"Andrew Rybchenko" <andrew.rybchenko@oktetlabs.ru>,
"Beilei Xing" <beilei.xing@intel.com>,
"Richardson, Bruce" <bruce.richardson@intel.com>,
"Chas Williams" <chas3@att.com>,
"Xia, Chenbo" <chenbo.xia@intel.com>,
"Ciara Loftus" <ciara.loftus@intel.com>,
"Devendra Singh Rawat" <dsinghrawat@marvell.com>,
"Ed Czeck" <ed.czeck@atomicrules.com>,
"Evgeny Schemeilin" <evgenys@amazon.com>,
"Gaetan Rivet" <grive@u256.net>,
"Gagandeep Singh" <g.singh@nxp.com>,
"Guoyang Zhou" <zhouguoyang@huawei.com>,
"Haiyue Wang" <haiyue.wang@intel.com>,
"Harman Kalra" <hkalra@marvell.com>,
"Heinrich Kuhn" <heinrich.kuhn@corigine.com>,
"Hemant Agrawal" <hemant.agrawal@nxp.com>,
"Hyong Youb Kim" <hyonkim@cisco.com>,
"Igor Chauskin" <igorch@amazon.com>,
"Igor Russkikh" <irusskikh@marvell.com>,
"Jakub Grajciar" <jgrajcia@cisco.com>,
"Jasvinder Singh" <jasvinder.singh@intel.com>,
"Jian Wang" <jianwang@trustnetic.com>,
"Jiawen Wu" <jiawenwu@trustnetic.com>,
"Jingjing Wu" <jingjing.wu@intel.com>,
"John Daley" <johndale@cisco.com>,
"John Miller" <john.miller@atomicrules.com>,
"John W. Linville" <linville@tuxdriver.com>,
"Wiles, Keith" <keith.wiles@intel.com>,
"Kiran Kumar K" <kirankumark@marvell.com>,
"Lijun Ou" <oulijun@huawei.com>,
"Liron Himi" <lironh@marvell.com>,
"Long Li" <longli@microsoft.com>,
"Marcin Wojtas" <mw@semihalf.com>,
"Martin Spinler" <spinler@cesnet.cz>,
"Matan Azrad" <matan@nvidia.com>,
"Matt Peters" <matt.peters@windriver.com>,
"Maxime Coquelin" <maxime.coquelin@redhat.com>,
"Michal Krawczyk" <mk@semihalf.com>,
"Min Hu (Connor" <humin29@huawei.com>,
"Pradeep Kumar Nalla" <pnalla@marvell.com>,
"Nithin Dabilpuram" <ndabilpuram@marvell.com>,
"Qiming Yang" <qiming.yang@intel.com>,
"Qi Zhang" <qi.z.zhang@intel.com>,
"Radha Mohan Chintakuntla" <radhac@marvell.com>,
"Rahul Lakkireddy" <rahul.lakkireddy@chelsio.com>,
"Rasesh Mody" <rmody@marvell.com>,
"Rosen Xu" <rosen.xu@intel.com>,
"Sachin Saxena" <sachin.saxena@oss.nxp.com>,
"Satha Koteswara Rao Kottidi" <skoteshwar@marvell.com>,
"Shahed Shaikh" <shshaikh@marvell.com>,
"Shai Brandes" <shaibran@amazon.com>,
"Shepard Siegel" <shepard.siegel@atomicrules.com>,
"Somalapuram Amaranath" <asomalap@amd.com>,
"Somnath Kotur" <somnath.kotur@broadcom.com>,
"Stephen Hemminger" <sthemmin@microsoft.com>,
"Steven Webster" <steven.webster@windriver.com>,
"Sunil Kumar Kori" <skori@marvell.com>,
"Tetsuya Mukawa" <mtetsuyah@gmail.com>,
"Veerasenareddy Burru" <vburru@marvell.com>,
"Viacheslav Ovsiienko" <viacheslavo@nvidia.com>,
"Xiao Wang" <xiao.w.wang@intel.com>,
"Xiaoyun Wang" <cloud.wangxiaoyun@huawei.com>,
"Yisen Zhuang" <yisen.zhuang@huawei.com>,
"Yong Wang" <yongwang@vmware.com>,
"Ziyang Xuan" <xuanziyang2@huawei.com>,
"Prasun Kapoor" <pkapoor@marvell.com>,
nadavh@marvell.com, "Satananda Burla" <sburla@marvell.com>,
"Narayana Prasad" <pathreya@marvell.com>,
"Akhil Goyal" <gakhil@marvell.com>,
"Ray Kinsella" <mdr@ashroe.eu>,
"Dmitry Kozlyuk" <dmitry.kozliuk@gmail.com>,
"Anatoly Burakov" <anatoly.burakov@intel.com>,
"Cristian Dumitrescu" <cristian.dumitrescu@intel.com>,
"Honnappa Nagarahalli" <honnappa.nagarahalli@arm.com>,
"Mattias Rönnblom" <mattias.ronnblom@ericsson.com>,
"Ruifeng Wang (Arm Technology China)" <ruifeng.wang@arm.com>,
"David Christensen" <drc@linux.vnet.ibm.com>,
"Ananyev, Konstantin" <konstantin.ananyev@intel.com>,
"Olivier Matz" <olivier.matz@6wind.com>,
"Jayatheerthan, Jay" <jay.jayatheerthan@intel.com>,
"Ashwin Sekhar Thalakalath Kottilveetil" <asekhar@marvell.com>,
"Pavan Nikhilesh" <pbhagavatula@marvell.com>,
"Elena Agostini" <eagostini@nvidia.com>,
"Srikanth Yalavarthi" <syalavarthi@marvell.com>,
dchickles@marvell.com, sshankarnara@marvell.com,
"John McNamara" <john.mcnamara@intel.com>,
"Stephen Hemminger" <stephen@networkplumber.org>,
"Morten Brørup" <mb@smartsharesystems.com>,
techboard@dpdk.org
Subject: Re: [dpdk-dev] [RFC PATCH 0/1] mldev: introduce machine learning device library
Date: Wed, 25 Jan 2023 14:45:16 +0100 [thread overview]
Message-ID: <4426124.uADA5c2rLh@thomas> (raw)
In-Reply-To: <98CBD80474FA8B44BF855DF32C47DC35D87273@smartserver.smartshare.dk>
17/08/2022 08:58, Morten Brørup:
> > From: Jerin Jacob [mailto:jerinjacobk@gmail.com]
> > Sent: Wednesday, 17 August 2022 07.37
> >
> > On Tue, Aug 16, 2022 at 9:15 PM Morten Brørup
> > <mb@smartsharesystems.com> wrote:
> > >
> > > > From: Jerin Jacob [mailto:jerinjacobk@gmail.com]
> > > > Sent: Tuesday, 16 August 2022 15.13
> > > >
> > > > On Wed, Aug 3, 2022 at 8:49 PM Stephen Hemminger
> > > > <stephen@networkplumber.org> wrote:
> > > > >
> > > > > On Wed, 3 Aug 2022 18:58:37 +0530
> > > > > <jerinj@marvell.com> wrote:
> > > > >
> > > > > > Roadmap
> > > > > > -------
> > > > > > 1) Address the comments for this RFC.
> > > > > > 2) Common code for mldev
> > > > > > 3) SW mldev driver based on TVM (https://tvm.apache.org/)
> > > > >
> > > > > Having a SW implementation is important because then it can be
> > > > covered
> > > > > by tests.
> > > >
> > > > Yes. That reason for adding TVM based SW driver as item (3).
> > > >
> > > > Is there any other high level or API level comments before
> > proceeding
> > > > with v1 and implementation.
> > >
> > > Have you seriously considered if the DPDK Project is the best home
> > for this project? I can easily imagine the DPDK development process
> > being a hindrance in many aspects for an evolving AI/ML library. Off
> > the top of my head, it would probably be better off as a separate
> > project, like SPDK.
> >
> > Yes. The reasons are following
> >
> > # AI/ML compiler libraries more focused on model creation and
> > training etc (Thats where actual value addition the AI/ML libraries
> > can offer) and minimal part for interference(It is just added for
> > testing the model)
> > # Considering the inference is the scope of the DPDK. DPDK is ideal
> > place for following reasons
> >
> > a) Inference scope is very limited.
> > b) Avoid memcpy of interference data (Use directly from network or
> > other class of device like cryptodev, regexdev)
> > c) Reuse highspeed IO interface like PCI backed driver etc
> > d) Integration with other DPDK subsystems like eventdev etc for job
> > completion.
> > e) Also support more inline offloads by merging two device classes
> > like rte_secuity.
> > f) Run the inference model from different AI/ML compiler frameworks or
> > abstract the inference usage.
> > Similar concept is already applied to other DPDK device classes like
> > 1) In Regexdev, The compiler generates the rule database which is out
> > of scope of DPDK. DPDK API just loads the rule database
> > 2) In Gpudev, The GPU kernel etc out of scope of DPDK.DPDK cares about
> > IO interface.
>
> Thank you for the detailed reply, Jerin.
>
> These are good reasons for adding the new device class to the DPDK project - especially the Regexdev comparison got me convinced.
>
> >
> > > If all this stuff can be completely omitted at build time, I have no
> > objections.
> >
> > Yes, It can be completely omitted at build time.
>
> Perfect.
>
> > Also no plan to
> > integrate to testpmd and other existing application. Planning to add
> > only app/test-mldev application.
>
> +1 to that
>
> >
> > >
> > > A small note about naming (not intending to start a flame war, so
> > please feel free to ignore!): I haven't worked seriously with ML/AI
> > since university three decades ago, so I'm quite rusty in the domain.
> > However, I don't see any Machine Learning functions proposed by this
> > API. The library provides an API to an Inference Engine - but nobody
> > says the inference model stems from Machine Learning; it might as well
> > be a hand crafted model. Do you plan to propose APIs for training the
> > models? If not, the name of the library could confuse some potential
> > users.
> >
> > No, scope is only inference and it is documented in the programing
> > guide and API header file. I am trying to keep name similar to
> > regexdev, gpudev etc which have similar scope. But I am open to other
> > shortname/name if you have something in mind.
>
> The AI(Artificial Intelligence)/ML(Machine Learning)/IE(Inference Engine) chip market still seems immature and fragmented, so I can't find any consensus on generic names for such hardware accelerator devices.
>
> Some of the chip vendors represented on the DPDK mailing list offer AI/ML/IE accelerator chips. Perhaps their marketing department could propose alternatives to "Machine Learning Device"/"mldev" for inference engine devices (with no acceleration for training the models). If not, the initially proposed name is good enough.
>
> So: Everyone ask your marketing departments and speak up now, or the name "mldev" will be set in stone. ;-)
>
> I'm thinking: While "Inference Engine Device"/iedev might be technically more correct, it doesn't have same value as "Machine Learning Device"/"mldev" on a marketing scale. And we should choose a name that we expect might become industry standard consensus.
I don't why but I like mldev and dislike iedev.
I could be OK with aidev as well.
prev parent reply other threads:[~2023-01-25 13:45 UTC|newest]
Thread overview: 80+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-08-03 13:28 jerinj
2022-08-03 13:28 ` [dpdk-dev] [RFC PATCH 1/1] " jerinj
2022-11-14 12:02 ` [dpdk-dev] [PATCH v1 00/12] " jerinj
2022-11-14 12:02 ` [dpdk-dev] [PATCH v1 01/12] " jerinj
2023-02-01 13:34 ` Shivah Shankar Shankar Narayan Rao
2023-02-03 0:25 ` Stephen Hemminger
2023-02-03 8:42 ` Thomas Monjalon
2023-02-03 17:33 ` Stephen Hemminger
2023-02-03 20:18 ` Thomas Monjalon
2023-02-03 20:26 ` Stephen Hemminger
2023-02-03 20:49 ` Thomas Monjalon
2023-02-05 23:41 ` Stephen Hemminger
2023-02-03 10:01 ` Jerin Jacob
2023-02-03 0:25 ` Stephen Hemminger
2023-02-03 10:04 ` Jerin Jacob
2023-02-03 0:28 ` Stephen Hemminger
2023-02-03 10:03 ` Jerin Jacob
2023-02-02 5:26 ` Shivah Shankar Shankar Narayan Rao
2022-11-14 12:02 ` [dpdk-dev] [PATCH v1 02/12] mldev: add PMD functions for ML device jerinj
2022-11-14 12:02 ` [dpdk-dev] [PATCH v1 03/12] mldev: support device handling functions jerinj
2022-11-14 12:02 ` [dpdk-dev] [PATCH v1 04/12] mldev: support device queue-pair setup jerinj
2022-11-14 12:02 ` [dpdk-dev] [PATCH v1 05/12] mldev: support handling ML models jerinj
2022-11-14 12:02 ` [dpdk-dev] [PATCH v1 06/12] mldev: support input and output data handling jerinj
2022-11-14 12:02 ` [dpdk-dev] [PATCH v1 07/12] mldev: support op pool and its operations jerinj
2022-11-14 12:02 ` [dpdk-dev] [PATCH v1 08/12] mldev: support inference enqueue and dequeue jerinj
2022-11-14 12:02 ` [dpdk-dev] [PATCH v1 09/12] mldev: support device statistics jerinj
2022-11-14 12:02 ` [dpdk-dev] [PATCH v1 10/12] mldev: support device extended statistics jerinj
2022-11-14 12:02 ` [dpdk-dev] [PATCH v1 11/12] mldev: support to retrieve error information jerinj
2022-11-14 12:02 ` [dpdk-dev] [PATCH v1 12/12] mldev: support to get debug info and test device jerinj
2023-01-25 14:20 ` [dpdk-dev] [PATCH v1 00/12] mldev: introduce machine learning device library Thomas Monjalon
2023-01-25 19:01 ` Jerin Jacob
2023-01-26 11:11 ` Thomas Monjalon
2023-01-27 2:33 ` [EXT] " Shivah Shankar Shankar Narayan Rao
2023-01-27 4:29 ` Jerin Jacob
2023-01-27 11:34 ` Thomas Monjalon
2023-01-28 11:27 ` Jerin Jacob
2023-02-01 16:57 ` Thomas Monjalon
2023-02-01 17:33 ` Jerin Jacob
2023-02-06 20:24 ` [dpdk-dev] [PATCH v2 " jerinj
2023-02-06 20:24 ` [dpdk-dev] [PATCH v2 01/12] " jerinj
2023-02-06 20:24 ` [dpdk-dev] [PATCH v2 02/12] mldev: support PMD functions for ML device jerinj
2023-02-06 21:04 ` Stephen Hemminger
2023-02-06 22:17 ` Thomas Monjalon
2023-02-07 5:16 ` Jerin Jacob
2023-02-06 20:24 ` [dpdk-dev] [PATCH v2 03/12] mldev: support ML device handling functions jerinj
2023-02-06 20:24 ` [dpdk-dev] [PATCH v2 04/12] mldev: support ML device queue-pair setup jerinj
2023-02-06 20:24 ` [dpdk-dev] [PATCH v2 05/12] mldev: support handling ML models jerinj
2023-02-06 20:24 ` [dpdk-dev] [PATCH v2 06/12] mldev: support input and output data handling jerinj
2023-02-06 20:24 ` [dpdk-dev] [PATCH v2 07/12] mldev: support ML op pool and ops jerinj
2023-02-06 20:24 ` [dpdk-dev] [PATCH v2 08/12] mldev: support inference enqueue and dequeue jerinj
2023-02-06 20:24 ` [dpdk-dev] [PATCH v2 09/12] mldev: support device statistics jerinj
2023-02-06 20:24 ` [dpdk-dev] [PATCH v2 10/12] mldev: support device extended statistics jerinj
2023-02-06 20:24 ` [dpdk-dev] [PATCH v2 11/12] mldev: support to retrieve error information jerinj
2023-02-06 20:24 ` [dpdk-dev] [PATCH v2 12/12] mldev: support to get debug info and test device jerinj
2023-02-07 15:13 ` [dpdk-dev] [PATCH v3 00/12] mldev: introduce machine learning device library jerinj
2023-02-07 15:13 ` [dpdk-dev] [PATCH v3 01/12] " jerinj
2023-02-07 15:13 ` [dpdk-dev] [PATCH v3 02/12] mldev: support PMD functions for ML device jerinj
2023-02-07 15:13 ` [dpdk-dev] [PATCH v3 03/12] mldev: support ML device handling functions jerinj
2023-02-07 15:13 ` [dpdk-dev] [PATCH v3 04/12] mldev: support ML device queue-pair setup jerinj
2023-02-07 15:13 ` [dpdk-dev] [PATCH v3 05/12] mldev: support handling ML models jerinj
2023-02-07 15:13 ` [dpdk-dev] [PATCH v3 06/12] mldev: support input and output data handling jerinj
2023-02-07 15:13 ` [dpdk-dev] [PATCH v3 07/12] mldev: support ML op pool and ops jerinj
2023-02-07 15:13 ` [dpdk-dev] [PATCH v3 08/12] mldev: support inference enqueue and dequeue jerinj
2023-02-07 15:13 ` [dpdk-dev] [PATCH v3 09/12] mldev: support device statistics jerinj
2023-02-07 15:13 ` [dpdk-dev] [PATCH v3 10/12] mldev: support device extended statistics jerinj
2023-02-07 15:13 ` [dpdk-dev] [PATCH v3 11/12] mldev: support to retrieve error information jerinj
2023-02-07 15:13 ` [dpdk-dev] [PATCH v3 12/12] mldev: support to get debug info and test device jerinj
2023-02-15 12:55 ` [dpdk-dev] [PATCH v3 00/12] mldev: introduce machine learning device library Ferruh Yigit
2023-02-15 17:03 ` Jerin Jacob
2023-03-09 17:33 ` Thomas Monjalon
2022-08-03 15:19 ` [dpdk-dev] [RFC PATCH 0/1] " Stephen Hemminger
2022-08-16 13:13 ` Jerin Jacob
2022-08-16 15:45 ` Morten Brørup
2022-08-16 16:34 ` Honnappa Nagarahalli
2022-08-17 14:53 ` Jerin Jacob
2023-01-25 13:47 ` Thomas Monjalon
2023-01-25 13:54 ` Jerin Jacob
2022-08-17 5:37 ` Jerin Jacob
2022-08-17 6:58 ` Morten Brørup
2023-01-25 13:45 ` Thomas Monjalon [this message]
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=4426124.uADA5c2rLh@thomas \
--to=thomas@monjalon.net \
--cc=aboyer@pensando.io \
--cc=ajit.khaparde@broadcom.com \
--cc=anatoly.burakov@intel.com \
--cc=andrew.rybchenko@oktetlabs.ru \
--cc=asekhar@marvell.com \
--cc=asomalap@amd.com \
--cc=beilei.xing@intel.com \
--cc=bruce.richardson@intel.com \
--cc=chas3@att.com \
--cc=chenbo.xia@intel.com \
--cc=ciara.loftus@intel.com \
--cc=cloud.wangxiaoyun@huawei.com \
--cc=cristian.dumitrescu@intel.com \
--cc=dchickles@marvell.com \
--cc=dev@dpdk.org \
--cc=dmitry.kozliuk@gmail.com \
--cc=drc@linux.vnet.ibm.com \
--cc=dsinghrawat@marvell.com \
--cc=eagostini@nvidia.com \
--cc=ed.czeck@atomicrules.com \
--cc=evgenys@amazon.com \
--cc=ferruh.yigit@xilinx.com \
--cc=g.singh@nxp.com \
--cc=gakhil@marvell.com \
--cc=grive@u256.net \
--cc=haiyue.wang@intel.com \
--cc=heinrich.kuhn@corigine.com \
--cc=hemant.agrawal@nxp.com \
--cc=hkalra@marvell.com \
--cc=honnappa.nagarahalli@arm.com \
--cc=humin29@huawei.com \
--cc=hyonkim@cisco.com \
--cc=igorch@amazon.com \
--cc=irusskikh@marvell.com \
--cc=jasvinder.singh@intel.com \
--cc=jay.jayatheerthan@intel.com \
--cc=jerinj@marvell.com \
--cc=jerinjacobk@gmail.com \
--cc=jgrajcia@cisco.com \
--cc=jianwang@trustnetic.com \
--cc=jiawenwu@trustnetic.com \
--cc=jingjing.wu@intel.com \
--cc=john.mcnamara@intel.com \
--cc=john.miller@atomicrules.com \
--cc=johndale@cisco.com \
--cc=keith.wiles@intel.com \
--cc=kirankumark@marvell.com \
--cc=konstantin.ananyev@intel.com \
--cc=linville@tuxdriver.com \
--cc=lironh@marvell.com \
--cc=longli@microsoft.com \
--cc=matan@nvidia.com \
--cc=matt.peters@windriver.com \
--cc=mattias.ronnblom@ericsson.com \
--cc=maxime.coquelin@redhat.com \
--cc=mb@smartsharesystems.com \
--cc=mdr@ashroe.eu \
--cc=mk@semihalf.com \
--cc=mtetsuyah@gmail.com \
--cc=mw@semihalf.com \
--cc=nadavh@marvell.com \
--cc=ndabilpuram@marvell.com \
--cc=olivier.matz@6wind.com \
--cc=oulijun@huawei.com \
--cc=pathreya@marvell.com \
--cc=pbhagavatula@marvell.com \
--cc=pkapoor@marvell.com \
--cc=pnalla@marvell.com \
--cc=qi.z.zhang@intel.com \
--cc=qiming.yang@intel.com \
--cc=radhac@marvell.com \
--cc=rahul.lakkireddy@chelsio.com \
--cc=rmody@marvell.com \
--cc=rosen.xu@intel.com \
--cc=ruifeng.wang@arm.com \
--cc=sachin.saxena@oss.nxp.com \
--cc=sburla@marvell.com \
--cc=shaibran@amazon.com \
--cc=shepard.siegel@atomicrules.com \
--cc=shshaikh@marvell.com \
--cc=skori@marvell.com \
--cc=skoteshwar@marvell.com \
--cc=somnath.kotur@broadcom.com \
--cc=spinler@cesnet.cz \
--cc=sshankarnara@marvell.com \
--cc=stephen@networkplumber.org \
--cc=steven.webster@windriver.com \
--cc=sthemmin@microsoft.com \
--cc=syalavarthi@marvell.com \
--cc=techboard@dpdk.org \
--cc=vburru@marvell.com \
--cc=viacheslavo@nvidia.com \
--cc=xiao.w.wang@intel.com \
--cc=xuanziyang2@huawei.com \
--cc=yisen.zhuang@huawei.com \
--cc=yongwang@vmware.com \
--cc=zhouguoyang@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).