public inbox for linux-kernel@vger.kernel.org
 help / color / mirror / Atom feed
* [Patch 0/9] Per-task delay accounting
@ 2006-03-14  0:40 Shailabh Nagar
  2006-03-14  0:42 ` [Patch 1/9] timestamp diff Shailabh Nagar
                   ` (9 more replies)
  0 siblings, 10 replies; 56+ messages in thread
From: Shailabh Nagar @ 2006-03-14  0:40 UTC (permalink / raw)
  To: linux-kernel; +Cc: Nick Piggin

This is the next iteration of the delay accounting patches
last posted at
	http://www.ussg.iu.edu/hypermail/linux/kernel/0602.3/0893.html

The major changes to the patches (and names of commenters whose concerns
have been addressed) are:

- considerable revision of the synchronous block I/O delay collection (Arjan)
Now most delays seen in I/O submission are not being collected.
- removal of dependency on schedstats by using common code (Nick) 
- removal of sysctl or dynamic configurability of delay accounting (Arjan)
Now it it can be set on/off at boot time only.
- providing I/O delays through /proc/<tgid>/stats (Andi)
- revisions to the generic netlink interface (Jamal)

Unaddressed comments are suggestions from Jamal on 
further improving the generic netlink interface which is ongoing.

Series 

nstimestamp-diff.patch
delayacct-setup.patch
delayacct-blkio-init.patch
delayacct-blkio-collect.patch
delayacct-swapin.patch
delayacct-procfs.patch
delayacct-schedstats.patch
genetlink-utils.patch
delayacct-genetlink.patch


A short note on expected usage of this functionality follows which
addresses a comment from Nick in the previous iteration.
Basically, the patches measures a subset of the delays encountered 
by a task waiting for a resource such as cpu, disk I/O and page 
frames. Which subset is chosen depends on whether a task's delay 
is something that can be controlled by playing with its priority 
or rss limit etc.
e.g. cpu delays can directly be affected by its static CPU priority.
Similarly I/O delay can be affected by its I/O priority (assuming 
one uses the right iosched). In page frame delay, we only count 
the page faults due to swapin since that is directly affected by 
the rss limits for a task (well, ok, process). 

Delays can be used as feedback to decide whether something can/should
be done about a task (or group of tasks) which is not performing 
as one expects. 

http://www.research.ibm.com/journal/sj/362/amanaut.html
lists a fairly complicated way of using such data in 
workload management.

At a simpler level, one can think of utilities that can use this data
to control individual apps using a simple feedback loop.
At this point we do not have such a utility. 

Of course, its useful to visually inspect such data. Some of it is 
being exported through /proc as suggested by Andi, but the primary 
interface is through a netlink socket so that userspace can get 
data for exiting tasks too. 

The netlink socket also allows userspace apps to efficiently 
collect  delay data and group it in arbitrary ways 
(as envisaged by CKRM, CSA or ELSA) for reporting or 
control purposes. 


--Shailabh


^ permalink raw reply	[flat|nested] 56+ messages in thread

end of thread, other threads:[~2006-03-27 18:28 UTC | newest]

Thread overview: 56+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-03-14  0:40 [Patch 0/9] Per-task delay accounting Shailabh Nagar
2006-03-14  0:42 ` [Patch 1/9] timestamp diff Shailabh Nagar
2006-03-14  1:01   ` Lee Revell
2006-03-14  1:05     ` Shailabh Nagar
2006-03-14  1:12       ` Lee Revell
2006-03-14  3:42         ` Balbir Singh
2006-03-14  4:26           ` Shailabh Nagar
2006-03-14  6:50             ` Balbir Singh
2006-03-15 10:23   ` Arjan van de Ven
2006-03-15 10:28     ` Balbir Singh
2006-03-14  0:45 ` Patch 2/9] Initialization Shailabh Nagar
2006-03-14 10:54   ` Jes Sorensen
2006-03-14 15:20     ` Shailabh Nagar
2006-03-15 10:24   ` Arjan van de Ven
2006-03-15 12:37     ` Alan Cox
2006-03-15 15:53       ` Shailabh Nagar
2006-03-14  0:47 ` [Patch 3/9] Block I/O accounting initialization Shailabh Nagar
2006-03-15 10:27   ` Arjan van de Ven
2006-03-15 16:27     ` Shailabh Nagar
2006-03-14  0:48 ` [Patch 4/9] Block I/O accounting collection Shailabh Nagar
2006-03-14  0:51 ` [Patch 5/9] Swapin delays Shailabh Nagar
2006-03-14  0:53 ` [Patch 7/9] /proc interface for all I/O delays Shailabh Nagar
2006-03-14  0:55 ` [Patch 8/9] generic netlink utility functions Shailabh Nagar
2006-03-26 16:44   ` Balbir Singh
2006-03-26 17:06     ` jamal
2006-03-14  0:56 ` [Patch 9/9] Generic netlink interface for delay accounting Shailabh Nagar
2006-03-14  2:29   ` jamal
2006-03-14  2:33   ` Matt Helsley
2006-03-14  2:48     ` jamal
2006-03-14  4:18       ` Shailabh Nagar
2006-03-22  7:49       ` [RFC][UPDATED PATCH 2.6.16] " Balbir Singh
2006-03-23 14:04         ` jamal
2006-03-23 15:41           ` Balbir Singh
2006-03-24 14:04             ` jamal
2006-03-24 14:54               ` Balbir Singh
2006-03-25  1:19                 ` jamal
2006-03-25  9:41                   ` Balbir Singh
2006-03-25 12:52                     ` jamal
2006-03-25 15:36                       ` Balbir Singh
2006-03-25 17:48                         ` jamal
2006-03-25 18:22                           ` Balbir Singh
2006-03-26 14:05                             ` jamal
2006-03-26 16:40                               ` Balbir Singh
2006-03-24  1:32           ` Balbir Singh
2006-03-24 14:11             ` jamal
2006-03-24 14:19               ` jamal
2006-03-24 14:59               ` Balbir Singh
2006-03-14  4:29     ` Shailabh Nagar
2006-03-14  1:01 ` [Patch 6/9] cpu delay collection Shailabh Nagar
2006-03-14 19:28 ` [Patch 0/9] Per-task delay accounting Greg KH
2006-03-14 20:49   ` Shailabh Nagar
2006-03-14 21:24     ` Greg KH
2006-03-14 21:59       ` Shailabh Nagar
2006-03-23 15:16   ` [Patch 0/9] Performance Shailabh Nagar
2006-03-25  2:38     ` Greg KH
2006-03-27 18:28       ` Shailabh Nagar

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox