Spdk/test/lib
Shuhei Matsumoto 1732428a2b bdevperf: IOPS average by exponential moving average
- Cumulative Moving Average (CMA): average of all data up to current
- Exponential Moving Average (EMA): weighted mean of the previous n
  data and more weight is given to recent
- Simple Moving Average (SMA): unweighted mean of the previous n data

Currently bdevperf support only CMA to know average of IOPS. However
CMA may not be appropriate to know the trend of IOPS. EMA or SMA will
be better to take the role.

The formula of EMA utilized in bdevperf is the following

Multiplier = (2 / (Time periods + 1))
EMA: EMA[n+1] = (IOPS - EMA[n]} x multiplier + EMA[n].

One of the source of the formula is https://github.com/patharanordev/ema

Change-Id: Ia7a282f6d173ace470e05b19ee6dee5edf640617
Signed-off-by: Shuhei Matsumoto <shuhei.matsumoto.xt@hitachi.com>
Reviewed-on: https://review.gerrithub.io/398886
Tested-by: SPDK Automated Test System <sys_sgsw@intel.com>
Reviewed-by: GangCao <gang.cao@intel.com>
Reviewed-by: Daniel Verkamp <daniel.verkamp@intel.com>
Reviewed-by: Jim Harris <james.r.harris@intel.com>
2018-03-09 14:53:17 -05:00
..
bdev bdevperf: IOPS average by exponential moving average 2018-03-09 14:53:17 -05:00
blobfs lib: Return instead of exit in event 2018-03-08 11:47:01 -05:00
env scripts/check_format: check for spaces before tabs 2018-03-05 11:09:13 -05:00
event lib: Return instead of exit in event 2018-03-08 11:47:01 -05:00
ioat autotest: add test completion tracking 2018-03-01 17:13:41 -05:00
json build: add @: to remaining 'all' targets 2018-02-14 17:38:25 -05:00
nvme test/overhead: allocate histograms for aio cases 2018-03-08 11:37:21 -05:00
util build: add @: to remaining 'all' targets 2018-02-14 17:38:25 -05:00
Makefile test: add util/histogram_perf test application 2017-12-29 14:20:48 -05:00
test_env.c nvme: normalize PCI addresses before comparing 2017-11-16 18:17:09 -05:00
ut_multithread.c ut_multithread: add the support of periodic poller 2018-02-15 11:20:15 -05:00