Dennis Zhou (Facebook)
c480bcf97b
block: make iolatency avg_lat exponentially decay
...
Currently, avg_lat is calculated by accumulating the mean of every
window in a long running cumulative average. As time goes on, the metric
becomes less and less useful due to the accumulated history.
This patch reuses the same calculation done in load averages to make the
avg_lat metric more lively. Unlike load averages, the avg only advances
when a window elapses (due to an io). Idle periods extend the most
recent window. Bucketing is used to limit the history of avg_lat by
binding it to the window size. So, the window range for 1/exp (decay
rate) is [1 min, 2.5 min) when windows elapse immediately.
The current sample window size is exposed in the debug info to enable
calculation of the window range.
Signed-off-by: Dennis Zhou <dennisszhou@gmail.com>
Acked-by: Tejun Heo <tj@kernel.org>
Acked-by: Johannes Weiner <hannes@cmpxchg.org>
Acked-by: Josef Bacik <josef@toxicpanda.com>
Signed-off-by: Jens Axboe <axboe@kernel.dk>
2018-08-02 09:58:14 -06:00
..
ABI
block: Track DISCARD statistics and output them in stat and diskstat
2018-07-18 08:44:22 -06:00
accelerators
ocxl: Document new OCXL IOCTLs
2018-06-03 20:40:33 +10:00
accounting
acpi
ACPI / Documentation: update ACPI customize method feature docs
2018-06-06 08:48:00 +02:00
admin-guide
block: make iolatency avg_lat exponentially decay
2018-08-02 09:58:14 -06:00
aoe
arm
ARM: Device-tree updates
2018-06-11 17:57:38 -07:00
arm64
ARM:
2018-04-09 11:42:31 -07:00
auxdisplay
Doc: misc-devices: move lcd-panel-cgram.txt to auxdisplay/
2018-04-12 16:08:02 +02:00
backlight
block
block: Track DISCARD statistics and output them in stat and diskstat
2018-07-18 08:44:22 -06:00
blockdev
zram: introduce zram memory tracking
2018-06-07 17:34:34 -07:00
bpf
bpf, doc: howto use/run the BPF selftests
2018-05-14 23:02:58 -07:00
bus-devices
cdrom
cgroup-v1
page cache: use xa_lock
2018-04-11 10:28:39 -07:00
cma
connector
console
core-api
Fix Documentation build due to rename of main.c to mtrr.c
2018-06-18 13:41:45 +09:00
cpu-freq
cpufreq: Drop cpufreq_table_validate_and_show()
2018-04-10 08:40:45 +02:00
cpuidle
cpuidle: Add definition of residency to sysfs documentation
2018-04-09 13:44:37 +02:00
crypto
docs: crypto_engine.rst: Fix two parse warnings
2018-06-15 12:48:59 -03:00
dev-tools
doc: dev-tools: kselftest.rst: update contributing new tests
2018-04-27 16:56:15 -06:00
device-mapper
dm: add writecache target
2018-06-08 11:59:51 -04:00
devicetree
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
2018-06-27 09:16:53 -07:00
doc-guide
MAINTAINERS & files: Canonize the e-mails I use at files
2018-05-04 06:21:06 -04:00
driver-api
Move all the dma-mapping code to kernel/dma
2018-06-20 16:30:01 +09:00
driver-model
early-userspace
EDID
extcon
fault-injection
fb
features
Kbuild: rename HAVE_CC_STACKPROTECTOR config variable
2018-06-15 07:15:28 +09:00
filesystems
Revert changes to convert to ->poll_mask() and aio IOCB_CMD_POLL
2018-06-28 10:40:47 -07:00
firmware_class
fmc
gpio
gpu
Merge remote-tracking branch 'drm/drm-next' into drm-misc-next
2018-05-11 18:08:10 +02:00
hid
hwmon
docs: Fix more broken references
2018-06-15 18:11:26 -03:00
i2c
Merge branch 'i2c/for-4.18' of git://git.kernel.org/pub/scm/linux/kernel/git/wsa/linux
2018-06-14 16:21:46 +09:00
ia64
ide
iio
infiniband
input
Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/dtor/input
2018-04-05 13:21:57 -07:00
ioctl
SCSI misc on 20180610
2018-06-10 13:01:12 -07:00
isdn
kbuild
kconfig: document Kconfig source file comments
2018-06-25 23:21:14 +09:00
kdump
kernel-hacking
laptops
platform/x86: thinkpad_acpi: silence HKEY 0x6032, 0x60f0, 0x6030
2018-05-07 15:10:31 +03:00
leds
lightnvm
livepatch
livepatch: Remove not longer valid limitations from the documentation
2018-05-24 15:37:57 +02:00
locking
m68k
maintainer
docs: Fix more broken references
2018-06-15 18:11:26 -03:00
md
media
media: cec: improve cec status documentation
2018-05-25 15:34:50 -04:00
memory-devices
mic
mips
misc-devices
Mostly small fixes and cleanups, plus a non-trivial fix for charlcd
2018-06-07 14:01:16 -07:00
mmc
mtd
namespaces
netlabel
networking
strparser: Corrected typo in documentation.
2018-06-24 16:40:20 +09:00
nfc
nios2
nvdimm
nvmem
openrisc
parisc
PCI
PCI/AER: Handle ERR_FATAL with removal and re-enumeration of devices
2018-05-17 16:44:13 -05:00
pcmcia
perf
phy
platform
power
firmware: Fix firmware documentation for recent file renames
2018-04-23 13:03:26 +02:00
powerpc
pps
process
There's been a fair amount of work in the docs tree this time around,
2018-06-04 12:34:27 -07:00
pti
ptp
rapidio
RCU
doc: Ensure whatisRCU.txt actually says what RCU is
2018-05-15 10:28:12 -07:00
riscv
perf: riscv: Add Document for Future Porting Guide
2018-06-04 14:02:11 -07:00
s390
scheduler
sched/deadline/Documentation: Add overrun signal and GRUB-PA documentation
2018-05-14 09:12:27 +02:00
scsi
block: remove BLK_EH_HANDLED
2018-05-29 08:59:21 -06:00
security
Kbuild: rename CC_STACKPROTECTOR[_STRONG] config variables
2018-06-14 12:21:18 +09:00
serial
sh
sound
sound updates for 4.18
2018-06-06 09:08:38 -07:00
sparc
sphinx
Documentation: rstFlatTable.py: fix a broken reference
2018-06-15 18:10:01 -03:00
sphinx-static
spi
sysctl
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net-next
2018-06-06 18:39:49 -07:00
target
thermal
timers
trace
tracing: Fix some errors in histogram documentation
2018-06-21 15:12:44 -04:00
translations
fix a series of Documentation/ broken file name references
2018-06-15 18:10:01 -03:00
usb
doc: usb: Fix typo in gadget_configfs documentation
2018-06-18 12:41:00 +03:00
userspace-api
audit/stable-4.18 PR 20180605
2018-06-06 16:34:00 -07:00
virtual
KVM: fix KVM_CAP_HYPERV_TLBFLUSH paragraph number
2018-06-22 17:30:20 +02:00
vm
docs/vm: move ksm and transhuge from "user" to "internals" section.
2018-05-29 06:45:55 -06:00
w1
watchdog
wimax
x86
Merge branch 'x86-cache-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2018-06-04 21:34:39 -07:00
xtensa
.gitignore
00-INDEX
docs: admin-guide: add cgroup-v2 documentation
2018-05-10 15:42:41 -06:00
atomic_bitops.txt
atomic_t.txt
bt8xxgpio.txt
btmrvl.txt
bus-virt-phys-mapping.txt
Changes
clearing-warn-once.txt
CodingStyle
conf.py
cpu-load.txt
cputopology.txt
crc32.txt
dcdbas.txt
debugging-modules.txt
debugging-via-ohci1394.txt
dell_rbu.txt
Documentation: remove stale firmware API reference
2018-05-14 16:44:41 +02:00
digsig.txt
DMA-API-HOWTO.txt
DMA-API.txt
DMA-attributes.txt
DMA-ISA-LPC.txt
docutils.conf
dontdiff
efi-stub.txt
eisa.txt
flexible-arrays.txt
futex-requeue-pi.txt
gcc-plugins.txt
highuid.txt
hw_random.txt
hwspinlock.txt
index.rst
docs/vm: add index.rst and link MM documentation to top level index
2018-04-16 14:18:15 -06:00
Intel-IOMMU.txt
intel_txt.txt
io-mapping.txt
io_ordering.txt
iostats.txt
block: Track DISCARD statistics and output them in stat and diskstat
2018-07-18 08:44:22 -06:00
IPMI.txt
IRQ-affinity.txt
IRQ-domain.txt
IRQ.txt
irqflags-tracing.txt
isa.txt
isapnp.txt
kernel-per-CPU-kthreads.txt
kobject.txt
kprobes.txt
docs: Fix some broken references
2018-06-15 18:10:01 -03:00
kref.txt
ldm.txt
lockup-watchdogs.txt
logo.gif
logo.txt
lsm.txt
lzo.txt
mailbox.txt
Makefile
memory-barriers.txt
Merge branch 'locking-core-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip
2018-06-04 16:40:11 -07:00
memory-hotplug.txt
men-chameleon-bus.txt
nommu-mmap.txt
ntb.txt
numastat.txt
padata.txt
parport-lowlevel.txt
percpu-rw-semaphore.txt
phy.txt
pi-futex.txt
pnp.txt
preempt-locking.txt
pwm.txt
rbtree.txt
remoteproc.txt
rfkill.txt
robust-futex-ABI.txt
robust-futexes.txt
rpmsg.txt
rtc.txt
SAK.txt
sgi-ioc4.txt
siphash.txt
SM501.txt
smsc_ece1099.txt
speculation.txt
static-keys.txt
SubmittingPatches
svga.txt
switchtec.txt
sync_file.txt
tee.txt
this_cpu_ops.txt
unaligned-memory-access.txt
vfio-mediated-device.txt
vfio/mdev: Check globally for duplicate devices
2018-06-08 10:24:27 -06:00
vfio.txt
vfio: fix documentation
2018-05-08 09:16:41 -06:00
video-output.txt
xillybus.txt
xz.txt
zorro.txt