[dpdk-dev,v3,10/11] compress/isal: add generic compression driver docs

Message ID 1523972132-6894-11-git-send-email-lee.daly@intel.com (mailing list archive)
State Superseded, archived
Delegated to: Pablo de Lara Guarch
Headers

Checks

Context Check Description
ci/checkpatch warning coding style issues
ci/Intel-compilation success Compilation OK

Commit Message

Daly, Lee April 17, 2018, 1:35 p.m. UTC
  Signed-off-by: Lee Daly <lee.daly@intel.com>
---
 MAINTAINERS                                        |  6 ++
 doc/guides/compressdevs/features/default.ini       | 42 +++++++++++
 doc/guides/compressdevs/index.rst                  | 12 ++++
 doc/guides/compressdevs/overview.rst               | 12 ++++
 doc/guides/compressdevs/overview_feature_table.txt | 81 ++++++++++++++++++++++
 doc/guides/index.rst                               |  1 +
 6 files changed, 154 insertions(+)
 create mode 100644 doc/guides/compressdevs/features/default.ini
 create mode 100644 doc/guides/compressdevs/index.rst
 create mode 100644 doc/guides/compressdevs/overview.rst
 create mode 100644 doc/guides/compressdevs/overview_feature_table.txt
  

Comments

Kovacevic, Marko April 23, 2018, 2:47 p.m. UTC | #1
Found two typos

> Signed-off-by: Lee Daly <lee.daly@intel.com>
> ---
>  MAINTAINERS                                        |  6 ++
>  doc/guides/compressdevs/features/default.ini       | 42 +++++++++++
>  doc/guides/compressdevs/index.rst                  | 12 ++++
>  doc/guides/compressdevs/overview.rst               | 12 ++++
>  doc/guides/compressdevs/overview_feature_table.txt | 81
> ++++++++++++++++++++++

<...>

> +; Supported algorithims of the 'ISA-L' compression driver.

 algorithims / algorithms


> +;
> +[ALGORITHIM]

ALGORITHIM /  ALGORITHM

> +Deflate =
> +LZS     =
> +;

<...>

Marko K
  
De Lara Guarch, Pablo April 24, 2018, 10:47 a.m. UTC | #2
> -----Original Message-----
> From: Daly, Lee
> Sent: Tuesday, April 17, 2018 2:36 PM
> To: dev@dpdk.org
> Cc: De Lara Guarch, Pablo <pablo.de.lara.guarch@intel.com>; Tucker, Greg B
> <greg.b.tucker@intel.com>; Jain, Deepak K <deepak.k.jain@intel.com>; Trahe,
> Fiona <fiona.trahe@intel.com>; Daly, Lee <lee.daly@intel.com>
> Subject: [PATCH v3 10/11] compress/isal: add generic compression driver docs
> 
> Signed-off-by: Lee Daly <lee.daly@intel.com>

...

> b/doc/guides/compressdevs/features/default.ini
> new file mode 100644
> index 0000000..b7fe1e1
> --- /dev/null
> +++ b/doc/guides/compressdevs/features/default.ini
> @@ -0,0 +1,42 @@
> +;
> +; Features of a default compression driver.
> +;
> +; This file defines the features that are valid for inclusion in ; the
> +other driver files and also the order that they appear in ; the
> +features table in the documentation.
> +;
> +[FEATURES]
> +HW Accelerated =
> +CPU SSE        =
> +CPU AVX        =
> +CPU AVX2       =
> +CPU AVX512     =
> +CPU NEON       =
> +Stateful       =
> +By-Pass        =
> +Chained mbufs  =
> +;
> +; Supported algorithims of the 'ISA-L' compression driver.

This file is generic for all PMDs, so remove the ISAL reference (same applicable below).

> +;
> +[ALGORITHIM]
> +Deflate =
> +LZS     =
> +;
> +; Supported checksums of the 'ISA-L' compression driver.
> +;
> +[CHECKSUMS]
> +Adler32       =
> +Crc32         =
> +Adler32&Crc32 =
> +;
> +; Supported huffman codes of the 'ISA-L' compression driver.
> +;
> +[HUFFMAN CODES]
> +Default      =

No need to add default here.

> +Fixed        =
> +Dynamic      =
> +Semi-Dynamic =

Semi-dynamic Huffman coding is not in the API, so remove it.

> +;
> +; Supported others of the 'ISA-L' compression driver.
> +;
> +[OTHERS]

Remove this section if it is going to be empty.
...

> +++ b/doc/guides/compressdevs/overview.rst
> @@ -0,0 +1,12 @@
> +..  SPDX-License-Identifier: BSD-3-Clause
> +    Copyright(c) 2018 Intel Corporation.
> +
> +Compression Device Supported Functionality Matrices
> +===================================================
> +
> +Supported Feature Flags
> +-----------------------
> +
> +.. _table_compression_pmd_features:
> +
> +.. include:: overview_feature_table.txt
> diff --git a/doc/guides/compressdevs/overview_feature_table.txt
> b/doc/guides/compressdevs/overview_feature_table.txt
> new file mode 100644
> index 0000000..b775124
> --- /dev/null
> +++ b/doc/guides/compressdevs/overview_feature_table.txt

This document gets generated with Sphinx. It parses the .ini files and generates it.
Look at how is done for cryptodev, in the setup function in doc/guides/conf.py,.
You should also extend the table for algorithm, checksum  and Huffman encoding.
Then, maybe it is just better to have all these sections in the FEATURES section, to build a single table.
Lastly, you need to add this file in the .gitignore file, to avoid adding it into git.

> @@ -0,0 +1,81 @@
> +
> +.. raw:: html
  
De Lara Guarch, Pablo April 24, 2018, 11:06 a.m. UTC | #3
> -----Original Message-----
> From: Daly, Lee
> Sent: Tuesday, April 17, 2018 2:36 PM
> To: dev@dpdk.org
> Cc: De Lara Guarch, Pablo <pablo.de.lara.guarch@intel.com>; Tucker, Greg B
> <greg.b.tucker@intel.com>; Jain, Deepak K <deepak.k.jain@intel.com>; Trahe,
> Fiona <fiona.trahe@intel.com>; Daly, Lee <lee.daly@intel.com>
> Subject: [PATCH v3 10/11] compress/isal: add generic compression driver docs
> 

One last comment. Change title to: "doc: add compression feature guide",
since this is not adding any information about ISA-L, but it is common for all compression PMDs.
  
Daly, Lee April 25, 2018, 2:25 p.m. UTC | #4
Thanks for the feedback on the patch set Pablo, 
V4 in progress.

> -----Original Message-----
> From: De Lara Guarch, Pablo
> Sent: Tuesday, April 24, 2018 12:07 PM
> To: Daly, Lee <lee.daly@intel.com>; dev@dpdk.org
> Cc: Tucker, Greg B <greg.b.tucker@intel.com>; Jain, Deepak K
> <deepak.k.jain@intel.com>; Trahe, Fiona <fiona.trahe@intel.com>
> Subject: RE: [PATCH v3 10/11] compress/isal: add generic compression driver
> docs
> 
> > -----Original Message-----
> > From: Daly, Lee
> > Sent: Tuesday, April 17, 2018 2:36 PM
> > To: dev@dpdk.org
> > Cc: De Lara Guarch, Pablo <pablo.de.lara.guarch@intel.com>; Tucker,
> > Greg B <greg.b.tucker@intel.com>; Jain, Deepak K
> > <deepak.k.jain@intel.com>; Trahe, Fiona <fiona.trahe@intel.com>; Daly,
> > Lee <lee.daly@intel.com>
> > Subject: [PATCH v3 10/11] compress/isal: add generic compression
> > driver docs
> >
> 
> One last comment. Change title to: "doc: add compression feature guide", since
> this is not adding any information about ISA-L, but it is common for all
> compression PMDs.
  

Patch

diff --git a/MAINTAINERS b/MAINTAINERS
index d2dd61c..37b9b1d 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -766,6 +766,12 @@  F: doc/guides/cryptodevs/zuc.rst
 F: doc/guides/cryptodevs/features/zuc.ini
 
 
+Compression Drivers
+-------------------
+M: Pablo de Lara <pablo.de.lara.guarch@intel.com>
+T: git://dpdk.org/next/dpdk-next-crypto
+
+
 Eventdev Drivers
 ----------------
 M: Jerin Jacob <jerin.jacob@caviumnetworks.com>
diff --git a/doc/guides/compressdevs/features/default.ini b/doc/guides/compressdevs/features/default.ini
new file mode 100644
index 0000000..b7fe1e1
--- /dev/null
+++ b/doc/guides/compressdevs/features/default.ini
@@ -0,0 +1,42 @@ 
+;
+; Features of a default compression driver.
+;
+; This file defines the features that are valid for inclusion in
+; the other driver files and also the order that they appear in
+; the features table in the documentation.
+;
+[FEATURES]
+HW Accelerated =
+CPU SSE        =
+CPU AVX        =
+CPU AVX2       =
+CPU AVX512     =
+CPU NEON       =
+Stateful       =
+By-Pass        =
+Chained mbufs  =
+;
+; Supported algorithims of the 'ISA-L' compression driver.
+;
+[ALGORITHIM]
+Deflate =
+LZS     =
+;
+; Supported checksums of the 'ISA-L' compression driver.
+;
+[CHECKSUMS]
+Adler32       =
+Crc32         =
+Adler32&Crc32 =
+;
+; Supported huffman codes of the 'ISA-L' compression driver.
+;
+[HUFFMAN CODES]
+Default      =
+Fixed        =
+Dynamic      =
+Semi-Dynamic =
+;
+; Supported others of the 'ISA-L' compression driver.
+;
+[OTHERS]
diff --git a/doc/guides/compressdevs/index.rst b/doc/guides/compressdevs/index.rst
new file mode 100644
index 0000000..9271cee
--- /dev/null
+++ b/doc/guides/compressdevs/index.rst
@@ -0,0 +1,12 @@ 
+..  SPDX-License-Identifier: BSD-3-Clause
+    Copyright(c) 2018 Intel Corporation.
+
+Compression Device Drivers
+==========================
+
+
+.. toctree::
+    :maxdepth: 2
+    :numbered:
+
+    overview
diff --git a/doc/guides/compressdevs/overview.rst b/doc/guides/compressdevs/overview.rst
new file mode 100644
index 0000000..ca37de1
--- /dev/null
+++ b/doc/guides/compressdevs/overview.rst
@@ -0,0 +1,12 @@ 
+..  SPDX-License-Identifier: BSD-3-Clause
+    Copyright(c) 2018 Intel Corporation.
+
+Compression Device Supported Functionality Matrices
+===================================================
+
+Supported Feature Flags
+-----------------------
+
+.. _table_compression_pmd_features:
+
+.. include:: overview_feature_table.txt
diff --git a/doc/guides/compressdevs/overview_feature_table.txt b/doc/guides/compressdevs/overview_feature_table.txt
new file mode 100644
index 0000000..b775124
--- /dev/null
+++ b/doc/guides/compressdevs/overview_feature_table.txt
@@ -0,0 +1,81 @@ 
+
+.. raw:: html
+
+   <style>
+      .wy-nav-content {
+         opacity: .99;
+      }
+      table#id1 {
+         cursor: default;
+         overflow: hidden;
+      }
+      table#id1 th, table#id1 td {
+         text-align: center;
+      }
+      table#id1 th {
+         font-size: 80%;
+         white-space: pre-wrap;
+         vertical-align: top;
+         padding: 0.5em 0;
+         min-width: 0.9em;
+         width: 2em;
+      }
+      table#id1 col:first-child {
+         width: 0;
+      }
+      table#id1 th:first-child {
+         vertical-align: bottom;
+      }
+      table#id1 td {
+         font-size: 70%;
+         padding: 1px;
+      }
+      table#id1 td:first-child {
+         padding-left: 1em;
+         text-align: left;
+      }
+      table#id1 tr:nth-child(2n-1) td {
+         background-color: rgba(210, 210, 210, 0.2);
+      }
+      table#id1 th:not(:first-child):hover,
+      table#id1 td:not(:first-child):hover {
+         position: relative;
+      }
+      table#id1 th:not(:first-child):hover::after,
+      table#id1 td:not(:first-child):hover::after {
+         content: '';
+         height: 6000px;
+         top: -3000px;
+         width: 100%;
+         left: 0;
+         position: absolute;
+         z-index: -1;
+         background-color: #ffb;
+      }
+      table#id1 tr:hover td {
+         background-color: #ffb;
+      }
+   </style>
+
+.. table:: Features availability in compress drivers
+
+   ========================= =
+   Feature                   i
+                             s
+                             a
+                             -
+                             l
+
+   ========================= =
+   Symmetric compression     Y
+   Sym operation chaining
+   HW Accelerated
+   Protocol offload
+   CPU SSE                   Y
+   CPU AVX                   Y
+   CPU AVX2                  Y
+   CPU AVX512                Y
+   CPU NEON
+   CPU ARM CE
+   Mbuf scatter gather
+   ========================= =
diff --git a/doc/guides/index.rst b/doc/guides/index.rst
index d60529d..18fe0ec 100644
--- a/doc/guides/index.rst
+++ b/doc/guides/index.rst
@@ -17,6 +17,7 @@  DPDK documentation
    nics/index
    bbdevs/index
    cryptodevs/index
+   compressdevs/index
    eventdevs/index
    mempool/index
    platform/index