Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1030385AbVLGWIP (ORCPT ); Wed, 7 Dec 2005 17:08:15 -0500 Received: (majordomo@vger.kernel.org) by vger.kernel.org id S1030386AbVLGWIP (ORCPT ); Wed, 7 Dec 2005 17:08:15 -0500 Received: from e32.co.us.ibm.com ([32.97.110.150]:53391 "EHLO e32.co.us.ibm.com") by vger.kernel.org with ESMTP id S1030385AbVLGWIP (ORCPT ); Wed, 7 Dec 2005 17:08:15 -0500 Message-ID: <43975D45.3080801@watson.ibm.com> Date: Wed, 07 Dec 2005 22:08:05 +0000 From: Shailabh Nagar User-Agent: Debian Thunderbird 1.0.2 (X11/20051002) X-Accept-Language: en-us, en MIME-Version: 1.0 To: linux-kernel CC: elsa-devel , lse-tech@lists.sourceforge.net, ckrm-tech , Guillaume Thouvenin , Jay Lan , Jens Axboe Subject: [RFC][Patch 0/5] Per-task delay accounting Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1990 Lines: 46 The following patches add accounting for the delays seen by a task in a) waiting for a CPU (while being runnable) b) completion of synchronous block I/O initiated by the task c) swapping in pages (i.e. capacity misses). Such delays provide feedback for a task's cpu priority, io priority and rss limit values. Long delays, especially relative to other tasks, can be a trigger for changing a task's cpu/io priorities and modifying its rss usage (either directly through sys_getprlimit() that was proposed earlier on lkml or by throttling cpu consumption or process calling sys_setrlimit etc.) There are quite a few differences from the earlier posting of these patches (http://www.uwsg.indiana.edu/hypermail/linux/kernel/0511.1/2275.html): - block I/O is (hopefully) being accounted properly now instead of just counting the time spent in io_schedule() as done earlier. - instead of accounting for time spent in all page faults, only swapping in of pages is being counted since thats the only part that one can really control (capacity misses vs. compulsory misses) - a /proc interface is being used instead of connector-based interface. Andrew Morton suggested a generic connector-based interface useful for future usage of connectors fo stats. This revised connector-based interface will be posted separately since its useful for efficient delivery of any per-task statistics, not just the ones being introduced by these patches. - the timestamping code has been made generic (following the suggestions to Matt Helsley's patches to add timestamps to process events connectors) More comments in individual patches. Series nstimestamp-diff.patch delayacct-init.patch delayacct-blkio.patch delayacct-swapin.patch delayacct-procfs.patch - To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/