Implement new Rate Control
authorDaveGlen <dglen@micron.com>
Mon, 10 Aug 2015 18:47:53 +0000 (12:47 -0600)
committerDaveGlen <dglen@micron.com>
Mon, 10 Aug 2015 18:47:53 +0000 (12:47 -0600)
commit50a8ce864e2c5bee7c44935b39b357aa8071615b
tree94383492176cc2ffcca7d64c1bc8b7140b622574
parent669e8bf8d509458aa6b3978b9e8a2e3d666e892d
Implement new Rate Control

Current implementation of rate control has the potential for bursts and
stalls when iodepth>1 due to feedback delay while IO is pending.  more
description here:
https://docs.google.com/drawings/d/1EG-9eGlNvw-m9m0wMSb_C_lyJcaPlhEFbkHRsVpt4wo/edit?usp=sharing

This commit changes the rate control mechanisms to use feed forward io
issues for rate feedback. Moving the rate control on submissions
instead of completions eliminates feedback delay. More details on the
change here:
https://docs.google.com/drawings/d/1NphdZGjYGuOLWJzvXHv44zuy0nnSunvFrROCVfA67Y8/edit?usp=sharing
backend.c
fio.h
init.c
io_u.c
ioengines.c
libfio.c
workqueue.c