DPDK patches and discussions
 help / color / mirror / Atom feed
From: Jerin Jacob <jerinjacobk@gmail.com>
To: "Morten Brørup" <mb@smartsharesystems.com>
Cc: "Jerin Jacob" <jerinj@marvell.com>, dpdk-dev <dev@dpdk.org>,
	"Thomas Monjalon" <thomas@monjalon.net>,
	"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>
Subject: Re: [dpdk-dev] [RFC PATCH 0/1] mldev: introduce machine learning device library
Date: Wed, 17 Aug 2022 11:07:18 +0530	[thread overview]
Message-ID: <CALBAE1PFCoYg-j1hMTXPk0iJD=B-3gVN66LjCgvyJbKicibX+Q@mail.gmail.com> (raw)
In-Reply-To: <98CBD80474FA8B44BF855DF32C47DC35D87271@smartserver.smartshare.dk>

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.

> If all this stuff can be completely omitted at build time, I have no objections.

Yes, It can be completely omitted at build time. Also no plan to
integrate to testpmd and other existing application. Planning to add
only app/test-mldev application.

>
> 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.

>
> > Or Anyone else interested to review or contribute to this new DPDK
> > device class?
>

  parent reply	other threads:[~2022-08-17  5:37 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 [this message]
2022-08-17  6:58         ` Morten Brørup
2023-01-25 13:45           ` 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='CALBAE1PFCoYg-j1hMTXPk0iJD=B-3gVN66LjCgvyJbKicibX+Q@mail.gmail.com' \
    --to=jerinjacobk@gmail.com \
    --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=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=thomas@monjalon.net \
    --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).