> -----Original Message-----
> From: Jerin Jacob <jerinjac...@gmail.com>
> Sent: 27 January 2023 15:58
> To: Thomas Monjalon <tho...@monjalon.net>
> Cc: Shivah Shankar Shankar Narayan Rao <sshankarn...@marvell.com>;
> Srikanth Yalavarthi <syalavar...@marvell.com>; dev@dpdk.org; Jerin Jacob
> Kollanukkaran <jer...@marvell.com>; Anup Prabhu
> <apra...@marvell.com>; ferruh.yi...@amd.com;
> bruce.richard...@intel.com; david.march...@redhat.com; Srikanth
> Yalavarthi <syalavar...@marvell.com>
> Subject: Re: [EXT] Re: [PATCH v3 0/4] implementation of ML common code
> 
> On Fri, Jan 27, 2023 at 2:56 PM Thomas Monjalon <tho...@monjalon.net>
> wrote:
> >
> > 27/01/2023 10:02, Jerin Jacob:
> > > On Fri, Jan 27, 2023 at 2:20 PM Thomas Monjalon
> <tho...@monjalon.net> wrote:
> > > > 27/01/2023 07:40, Jerin Jacob:
> > > > > On Thu, Jan 26, 2023 at 4:27 PM Thomas Monjalon
> <tho...@monjalon.net> wrote:
> > > > > > 25/01/2023 15:59, Srikanth Yalavarthi:
> > > > > > > From: Thomas Monjalon <tho...@monjalon.net>
> > > > > > > > 25/01/2023 14:25, Srikanth Yalavarthi:
> > > > > > > > > From: Thomas Monjalon <tho...@monjalon.net>
> > > > > > > > > > 20/12/2022 18:52, Srikanth Yalavarthi:
> > > > > > > > > > > This patch series implements the common ML code that
> > > > > > > > > > > can be used by ML drivers. Common code include
> > > > > > > > > > > functions to convert ML IO type to string, IO format
> > > > > > > > > > > type to string, function get size of ML IO type, and
> > > > > > > > > > > functions for converting data types from higher precision 
> > > > > > > > > > > to
> lower precision and vice-versa.
> > > > > > > > > >
> > > > > > > > > > I'm not sure about the path of this code.
> > > > > > > > > > In general we implement drivers helper in the same
> > > > > > > > > > directory as the driver and mark it as internal.
> > > > > > > > > > Would it work here?
> > > > > > > > >
> > > > > > > > > We are planning to implement two different ML drivers,
> > > > > > > > > ml/cnxk driver
> > > > > > > > (submitted for review) and a software only driver (part of
> > > > > > > > ML roadmap and currently WIP). Both the drivers would be
> > > > > > > > using these common functions for quantization and
> > > > > > > > dequantization. Hence, placed the files in common/ml directory.
> > > > > > > > >
> > > > > > > > > Moreover, these functions are used to convert data from
> > > > > > > > > higher to lower
> > > > > > > > precision or vice-versa and  can also be used by future ML
> > > > > > > > drivers for other platforms.
> > > > > > > >
> > > > > > > > I understand, and what you say does not contradict with
> > > > > > > > having this code in lib/mldev/.
> > > > > > > > So would you agree to move?
> > > > > > >
> > > > > > > These common functions do not have an rte_ml_dev_ prefix.
> > > > > >
> > > > > > As it is exported, it should have rte_ prefix.
> > > > >
> > > > > The exposed functions are similar to lib/ethdev/sff_* where
> > > > > multiple driver can "use" it but not by application directly.
> > > > > If so, What is the recommendation
> > > > > a) Keeping driver/common/ml without rte_prefix
> > > > > b) Keeping in lib/mldev/ with rte_mldev_pmd_ prefix?
> > > > >
> > > > > I prefer (a) as it will not pollute lib/mldev. No strong
> > > > > opinion, either. Let me know your view or any other suggestion?
> > > >
> > > > I don't see it as pollution, it comes with the library, so I
> > > > prefer lib/mldev/ with rte_mldev_pmd_ prefix.
> > > >
> > > >
> > > > > > Is it ok to have non-RTE code in lib/mldev. If yes, we can move to
> lib/mldev.
> > > > > >
> > > > > > Look at lib/ethdev/ethdev_driver.h, it should be similar.
> > > > >
> > > > > Here scope is different. See above.
> > > >
> > > > No the scope is not different.
> > > > They are functions used by drivers not by application.
> > >
> > > When you say lib/ethdev/ethdev_driver.h. You mean "struct
> eth_dev_ops" scheme.
> >
> > No I don't mean that. Did you check the internal functions in this file?
> > I mean functions like rte_eth_dev_allocate() or
> rte_eth_dev_attach_secondary().
> 
> Got it. Let's change to rte_ml_pmd_ prefix and add to lib/mldev then.

Considering the scope of these functions, I think, instead of rte_ml_pmd_ 
prefix, rte_ml_io_ prefix is more suitable? Also it would in similar lines with 
internal functions defined in other libraries. 

I can push the push a revised patch series accordingly.
> 
> >
> >
> >

Reply via email to