Skip to content

per-task delay accounting

Shailabh Nagar lkml netdev 1 version In review

Get series with b4
b4 am [email protected]

Versions newest first

  1. v1 Latest8 patches 31 repliesIn review

Patches in v1 No applies recorded yet

#Subject and filesSizeRepliesApplied
1/8SetupDocumentation/kernel-parameters.txt include/linux/delayacct.h include/linux/sched.h +6 more+183 -02 replies
2/8Block I/O, swapin delaysinclude/linux/delayacct.h include/linux/sched.h kernel/delayacct.c +2 more+50 -02 replies
3/8cpu delaysinclude/linux/sched.h kernel/sched.c+50 -194 replies
4/8generic netlink utility functionsinclude/net/genetlink.h+20 -00 replies
5/8generic netlink interface for delay accountinginclude/linux/delayacct.h include/linux/taskstats.h init/Kconfig +3 more+474 -35 replies
6/8virtual cpu run timeinclude/linux/taskstats.h kernel/delayacct.c+17 -52 replies
7/8proc interface for block I/O delaysfs/proc/array.c include/linux/delayacct.h kernel/delayacct.c+30 -21 reply
8/8documentation, userspace utilityDocumentation/delay-accounting.txt+484 -00 replies

Reviews trailers per patch

No Reviewed-by, Acked-by or Tested-by trailers for v1 yet.

Read the v1 thread

Cover letter [Patch 0/8] per-task delay accounting

Andrew,

Could you please include the following delay accounting patches in -mm ?

The patches have gone through several iterations on lkml and numerous comments raised by reviewers have been addressed

- several netlink interface comments (Jamal)
- block I/O collection method (Arjan)
- block I/O delays export through /proc (Andi)
- performance issues (Greg) (just addressed, see below)
- GPL headers (Arjan)

Most of the descriptions of the patches are either in the patch itself or in the documentation patch at the end.

Thanks
--Shailabh

Patch series

delayacct-setup.patch
delayacct-blkio-swapin.patch
delayacct-schedstats.patch
genetlink-utils.patch
delayacct-genetlink.patch
delayacct-virtcpu.patch
delayacct-procfs.patch
delayacct-doc.patch

Results highlights

- No statistically significant performance degradation is seen in kernbench, hackbench and large OLTP benchmark when delay accounting is configured.

The overheads of configuring delay accounting, without enabling at boot time, are statistically negligible for hackbench and a large OLTP benchmark and negative (i.e. performance improves) in kernbench.

- Similar lack of degradation is seen in kernbench and hackbench even when delay accounting is enabled at boot.

No data could be collected for the large OLTP benchmark (efforts ongoing).

Legend

Base

	Vanilla 2.6.16 kernel
	without any patches applied

+patch
Delay accounting configured
but not enabled at boot
+patch+enable
Delay accounting enabled at boot
but no stats read

Time Elapsed time, averaged over 10 runs
Stddev Standard deviation of elapsed times
Ovhd % difference of elapsed time with respect to base kernel
t-value Used to measure statistical significance
of difference of two mean values (in this case mean elapsed time). Low t-values indicate insignificant difference. The t-values here were calculated at 95% confidence interval using the tool at
http://www.polarismr.com/education/tools_stat_diff_means.html

Hackbench
---------
200 groups, using pipes
Elapsed time, in seconds, lower better

Ovhd Time Stddev Ovhd significant (t-value)
Base 0% 43.483 0.178 na
+patch 0.1% 43.517 0.265 No (0.337)
+patch+enable 0.3% 43.629 0.167 No (1.892)

Kernbench
---------
Average of 10 iterations
Elapsed time, in seconds, lower better

Ovhd Time Stddev Ovhd significant (t-value)
Base 0% 196.704 0.459 na
+patch -0.5% 195.812 0.477 Yes (4.261)
+patch+enable 0.02% 196.752 0.356 No (0.261)

Large OLTP benchmark
--------------------
An industry standard large database online transaction processing workload was run with delay accounting patches configured ON and OFF.

The performance degradation of delay accounting was about 0.2%, which was well within the normal range of variation between similar runs.

No runs were taken with delay accounting enabled at boot time.