lkml.org 
[lkml]   [2005]   [Sep]   [29]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
SubjectRe: [PATCH] vm - swap_prefetch v12
Date
On Fri, 30 Sep 2005 09:24 am, Andrew Morton wrote:
> Con Kolivas <kernel@kolivas.org> wrote:
> > On Fri, 30 Sep 2005 07:54 am, Andrew Morton wrote:
> > > Con Kolivas <kernel@kolivas.org> wrote:
> > > > Once pages have been added to the swapped list, a timer is started,
> > > > testing for conditions suitable to prefetch swap pages every 5
> > > > seconds. Suitable conditions are defined as lack of swapping out or
> > > > in any pages, and no watermark tests failing. Significant amounts of
> > > > dirtied ram also prevent prefetching. It then checks that we have
> > > > spare ram looking for at least 3* pages_high free per zone and if it
> > > > succeeds that will prefetch pages from swap.
> > >
> > > Did you consider poking around in gendisk.disk_stats to determine
> > > whether the swap disk(s) are idleish?
> >
> > I didn't know where to look for that info. Thanks! I'm open to *any*
> > suggestions and I'll look into it as I can't take this code much further
> > without outside help.
>
> Might also be able to utilise CFQ's I/O priorities. That should be more
> efective than a heuristic based on disk_stats, however you'd probably need
> to work out whether the swapdev actually supports IO priorities and I'm not
> sure how one would query that (cleanly).

Good idea. It should be easy to simply add the ioprio value to the kprefetchd
thread and it either supports it or it doesn't depending on what iosched is
being used.

Further to your original suggestion, prefetching is already delayed when any
non-prefetch related swap in or out is occurring already so checking
diskstats is probably not going to add to that for swap activity. However I
assume it (diskstats) could also be used for all disk i/o as well? Currently
a lot of dirty data can tell me that lots of writing is happening but I have
no way of checking that lots of reads are occurring.

Cheers,
Con
-
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/

\
 
 \ /
  Last update: 2005-09-30 01:42    [W:0.045 / U:1.404 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site