[ovs-dev] [PATCH 2/2] dpif-netdev-perf: Print SMC statistics.

Ilya Maximets i.maximets at samsung.com
Wed Sep 26 17:18:49 UTC 2018


Printing of the SMC hits missed in the 'dpif-netdev/pmd-perf-show'
appctl command.

CC: Yipeng Wang <yipeng1.wang at intel.com>
Fixes: 60d8ccae135f ("dpif-netdev: Add SMC cache after EMC cache")
Signed-off-by: Ilya Maximets <i.maximets at samsung.com>
---
 lib/dpif-netdev-perf.c      | 3 +++
 lib/dpif-netdev-perf.h      | 2 +-
 lib/dpif-netdev-unixctl.man | 3 ++-
 3 files changed, 6 insertions(+), 2 deletions(-)

diff --git a/lib/dpif-netdev-perf.c b/lib/dpif-netdev-perf.c
index 13f1010c9..92ac38dab 100644
--- a/lib/dpif-netdev-perf.c
+++ b/lib/dpif-netdev-perf.c
@@ -206,6 +206,7 @@ pmd_perf_format_overall_stats(struct ds *str, struct pmd_perf_stats *s,
             "  Rx packets:      %12"PRIu64"  (%.0f Kpps, %.0f cycles/pkt)\n"
             "  Datapath passes: %12"PRIu64"  (%.2f passes/pkt)\n"
             "  - EMC hits:      %12"PRIu64"  (%4.1f %%)\n"
+            "  - SMC hits:      %12"PRIu64"  (%4.1f %%)\n"
             "  - Megaflow hits: %12"PRIu64"  (%4.1f %%, %.2f subtbl lookups/"
                                                                      "hit)\n"
             "  - Upcalls:       %12"PRIu64"  (%4.1f %%, %.1f us/upcall)\n"
@@ -215,6 +216,8 @@ pmd_perf_format_overall_stats(struct ds *str, struct pmd_perf_stats *s,
             passes, rx_packets ? 1.0 * passes / rx_packets : 0,
             stats[PMD_STAT_EXACT_HIT],
             100.0 * stats[PMD_STAT_EXACT_HIT] / passes,
+            stats[PMD_STAT_SMC_HIT],
+            100.0 * stats[PMD_STAT_SMC_HIT] / passes,
             stats[PMD_STAT_MASKED_HIT],
             100.0 * stats[PMD_STAT_MASKED_HIT] / passes,
             stats[PMD_STAT_MASKED_HIT]
diff --git a/lib/dpif-netdev-perf.h b/lib/dpif-netdev-perf.h
index 299d52a98..859c05613 100644
--- a/lib/dpif-netdev-perf.h
+++ b/lib/dpif-netdev-perf.h
@@ -56,7 +56,7 @@ extern "C" {
 
 enum pmd_stat_type {
     PMD_STAT_EXACT_HIT,     /* Packets that had an exact match (emc). */
-    PMD_STAT_SMC_HIT,        /* Packets that had a sig match hit (SMC). */
+    PMD_STAT_SMC_HIT,       /* Packets that had a sig match hit (SMC). */
     PMD_STAT_MASKED_HIT,    /* Packets that matched in the flow table. */
     PMD_STAT_MISS,          /* Packets that did not match and upcall was ok. */
     PMD_STAT_LOST,          /* Packets that did not match and upcall failed. */
diff --git a/lib/dpif-netdev-unixctl.man b/lib/dpif-netdev-unixctl.man
index c46f6b19c..417456db3 100644
--- a/lib/dpif-netdev-unixctl.man
+++ b/lib/dpif-netdev-unixctl.man
@@ -11,7 +11,7 @@ Shows performance statistics for one or all pmd threads of the datapath
 \fIdp\fR. The special thread "main" sums up the statistics of every non pmd
 thread.
 
-The sum of "emc hits", "megaflow hits" and "miss" is the number of
+The sum of "emc hits", "smc hists", "megaflow hits" and "miss" is the number of
 packet lookups performed by the datapath. Beware that a recirculated packet
 experiences one additional lookup per recirculation, so there may be
 more lookups than forwarded packets in the datapath.
@@ -135,6 +135,7 @@ pmd thread numa_id 0 core_id 1:
   Rx packets:           2399607  (2381 Kpps, 848 cycles/pkt)
   Datapath passes:      3599415  (1.50 passes/pkt)
   - EMC hits:            336472  ( 9.3 %)
+  - SMC hits:                 0  ( 0.0 %)
   - Megaflow hits:      3262943  (90.7 %, 1.00 subtbl lookups/hit)
   - Upcalls:                  0  ( 0.0 %, 0.0 us/upcall)
   - Lost upcalls:             0  ( 0.0 %)
-- 
2.17.1



More information about the dev mailing list