Add Latency Distribution display 67/69467/3
authorXavier Simonart <xavier.simonart@intel.com>
Sun, 29 Dec 2019 17:41:50 +0000 (18:41 +0100)
committerXavier Simonart <xavier.simonart@intel.com>
Wed, 29 Jan 2020 11:12:27 +0000 (12:12 +0100)
commit7ef348cff20a6d35fe36bb551e5b1aaa69eded1a
treeeb3570fbdabd29f6af9e0d695ea8fbd7c8c8f5a5
parenta984177b93bd59fec43da19193b8ee5204d92e00
Add Latency Distribution display

- Latency Distribution (i.e. histograms) has been added when latency is enabled.
- Histograms are now compiled by default.
- A bug has also been fixed, which was causing strange behavior in the histograms
(due to bucket size being overwritten).
- The default bucket size has been changed to "11" which means that the size of each bucket
is now (1 cycle << 11) = 2048 cycles = 1 microsecond at 2GHz. It was (1 << (10 - 1)).

As there are 128 latency buckets, it is not possible to show all of them on the display.
Hence the latency buckets are displayed based on on the assumption that the minimum latency is usually relatively
stable and that the maximum latency change more often.
- The first empty buckets are not shown (i.e. buckets empty for all tasks)
- If more than 15 buckets are non empty, then the buckets are combined, so that a maximum of
15 (bigger) buckets are shown
- If less than 15 buckets are non empty, the following (empty) buckets are shown
(this avoid seeing every x seconds some columns being added and removed).

Change-Id: I27fe6ac0e513a5558e42ff2e74255c55ba79516d
Signed-off-by: Xavier Simonart <xavier.simonart@intel.com>
VNFs/DPPD-PROX/Makefile
VNFs/DPPD-PROX/cmd_parser.c
VNFs/DPPD-PROX/display.c
VNFs/DPPD-PROX/display.h
VNFs/DPPD-PROX/display_latency_distr.c [new file with mode: 0644]
VNFs/DPPD-PROX/display_latency_distr.h [new file with mode: 0644]
VNFs/DPPD-PROX/handle_lat.c
VNFs/DPPD-PROX/handle_lat.h
VNFs/DPPD-PROX/stats_latency.c
VNFs/DPPD-PROX/stats_latency.h