[PATCH v1 00/37] Implementation of ML CNXK driver
Srikanth Yalavarthi
syalavarthi at marvell.com
Thu Dec 8 21:01:43 CET 2022
Marvell ML CNXK Driver
----------------------
This patch series implements Machine Learning (ML) driver for Marvell
Octeon 10 (cnxk) platform. ML inferencing is supported on cnxk platform
through an integrated ML inferencing processor. The current driver
supports programming the ML hardware engine through offload mode.
All APIs proposed in the DPDK ML device specification are supported on
the cnxk platform.
Srikanth Yalavarthi (37):
ml/cnxk: add skeleton for ML cnxk driver
ml/cnxk: enable probe and remove of ML device
ml/cnxk: add driver support to get device info
ml/cnxk: add support for configure and close
ml/cnxk: parse ML firmware path from device args
ml/cnxk: enable firmware load and device reset
ml/cnxk: enable support for simulator environment
ml/cnxk: enable support for device start and stop
ml/cnxk: add support to create device queue-pairs
ml/cnxk: add functions to load and unload models
ml/cnxk: enable validity checks for model metadata
ml/cnxk: add internal structures for derived info
ml/cnxk: add internal structures for tiles and OCM
ml/cnxk: add structures for slow and fast path JDs
ml/cnxk: find OCM mask and page slots for a model
ml/cnxk: add support to reserve and free OCM pages
ml/cnxk: enable support to start an ML model
ml/cnxk: enable support to stop an ML models
ml/cnxk: enable support to get model information
ml/cnxk: enable support to update model params
ml/cnxk: add support to get IO buffer sizes
ml/cnxk: enable quantization and dequantization
ml/cnxk: enable support to dump device debug info
ml/cnxk: add driver support for device selftest
ml/cnxk: enqueue a burst of inference requests
ml/cnxk: dequeue a burst of inference requests
ml/cnxk: add internal function for sync mode run
ml/cnxk: enable support for firmware error codes
ml/cnxk: add support to get and reset device stats
ml/cnxk: add support to handle extended dev stats
ml/cnxk: enable support to get xstats in cycles
ml/cnxk: add support to report DPE FW warnings
ml/cnxk: add support to enable model data caching
ml/cnxk: add support to select OCM allocation mode
ml/cnxk: add support to use lock during jcmd enq
ml/cnxk: add support to select poll memory region
ml/cnxk: add user guide for marvell cnxk ml driver
MAINTAINERS | 3 +
doc/guides/index.rst | 1 +
doc/guides/mldevs/cnxk.rst | 238 +++
doc/guides/mldevs/index.rst | 14 +
drivers/meson.build | 1 +
drivers/ml/cnxk/cn10k_ml_dev.c | 823 +++++++++++
drivers/ml/cnxk/cn10k_ml_dev.h | 426 ++++++
drivers/ml/cnxk/cn10k_ml_model.c | 396 +++++
drivers/ml/cnxk/cn10k_ml_model.h | 511 +++++++
drivers/ml/cnxk/cn10k_ml_ocm.c | 509 +++++++
drivers/ml/cnxk/cn10k_ml_ocm.h | 91 ++
drivers/ml/cnxk/cn10k_ml_ops.c | 2310 ++++++++++++++++++++++++++++++
drivers/ml/cnxk/cn10k_ml_ops.h | 94 ++
drivers/ml/cnxk/meson.build | 32 +
drivers/ml/meson.build | 8 +
15 files changed, 5457 insertions(+)
create mode 100644 doc/guides/mldevs/cnxk.rst
create mode 100644 doc/guides/mldevs/index.rst
create mode 100644 drivers/ml/cnxk/cn10k_ml_dev.c
create mode 100644 drivers/ml/cnxk/cn10k_ml_dev.h
create mode 100644 drivers/ml/cnxk/cn10k_ml_model.c
create mode 100644 drivers/ml/cnxk/cn10k_ml_model.h
create mode 100644 drivers/ml/cnxk/cn10k_ml_ocm.c
create mode 100644 drivers/ml/cnxk/cn10k_ml_ocm.h
create mode 100644 drivers/ml/cnxk/cn10k_ml_ops.c
create mode 100644 drivers/ml/cnxk/cn10k_ml_ops.h
create mode 100644 drivers/ml/cnxk/meson.build
create mode 100644 drivers/ml/meson.build
--
2.17.1
More information about the dev
mailing list