Path: supernews.google.com!sn-xit-02!supernews.com!news.tele.dk!
64.152.100.70!cyclone-sjo1.usenetserver.com!news-out.usenetserver.com!
newshub2.rdc1.sfba.home.com!news.home.com!newshub1-work.home.com!
gehenna.pell.portland.or.us!nntp-server.caltech.edu!
nntp-server.caltech.edu!mail2news96
Newsgroups: mlist.linux.kernel
Date: 	Fri, 5 Jan 2001 15:14:08 -0200 (BRDT)
From: Rik van Riel <r...@conectiva.com.br>
X-To: linux...@kvack.org
X-cc: linux-ker...@vger.kernel.org
Subject: MM/VM todo list
Message-ID: <linux.kernel.Pine.LNX.4.21.0101051505430.1295-100000@duckman.distro.conectiva>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
Approved: n...@nntp-server.caltech.edu
Lines: 53

Hi,

here is a TODO list for the memory management area of the
Linux kernel, with both trivial things that could be done
for later 2.4 releases and more complex things that really
have to be 2.5 things.

Most of these can be found on http://linux24.sourceforge.net/ too

Trivial stuff:
* VM: better IO clustering for swap (and filesystem) IO
  * Marcelo's swapin/out clustering code
  * ->writepage() IO clustering support
  * page_launder()/->writepage() working together in avoiding
    low-yield (small cluster) IO at first, ...
* VM: include Ben LaHaise's code, which moves readahead to the
  VMA level, this way we can do streaming swap IO, complete with
  drop_behind()
* VM: enforce RSS ulimit


Probably 2.5 era:
* VM: physical->virtual reverse mapping, so we can do much
  better page aging with less CPU usage spikes 
* VM: move all the global VM variables, lists, etc. into the
  pgdat struct for better NUMA scalability
* VM: per-node kswapd for NUMA
* VM: thrashing control, maybe process suspension with some
  forced swapping ?             (trivial only in theory)
* VM: experiment with different active lists / aging pages
  of different ages at different rates + other page replacement
  improvements
* VM: Quality of Service / fairness / ... improvements


Additions to this list are always welcome, I'll put it online
on the Linux-MM pages (http://www.linux.eu.org/Linux-MM/) soon.

regards,

Rik
--
Virtual memory is like a game you can't win;
However, without VM there's truly nothing to loose...

		http://www.surriel.com/
http://www.conectiva.com/	http://distro.conectiva.com.br/


-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/

Path: supernews.google.com!sn-xit-02!supernews.com!
216.227.56.88.MISMATCH!telocity-west!TELOCITY!newsfeed.wirehub.nl!
newsfeed.direct.ca!look.ca!newshub2.rdc1.sfba.home.com!news.home.com!
newshub1-work.home.com!gehenna.pell.portland.or.us!
nntp-server.caltech.edu!nntp-server.caltech.edu!mail2news96
Newsgroups: mlist.linux.kernel
Date: 	Fri, 5 Jan 2001 13:54:59 -0200 (BRST)
From: Marcelo Tosatti <marc...@conectiva.com.br>
X-To: Rik van Riel <r...@conectiva.com.br>
X-cc: linux...@kvack.org, linux-ker...@vger.kernel.org
Subject: Re: MM/VM todo list
Message-ID: <linux.kernel.Pine.LNX.4.21.0101051344270.2745-100000@freak.distro.conectiva>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
Approved: n...@nntp-server.caltech.edu
Lines: 32


On Fri, 5 Jan 2001, Rik van Riel wrote:

> Hi,
> 
> here is a TODO list for the memory management area of the
> Linux kernel, with both trivial things that could be done
> for later 2.4 releases and more complex things that really
> have to be 2.5 things.
> 
> Most of these can be found on http://linux24.sourceforge.net/ too
> 
> Trivial stuff:
> * VM: better IO clustering for swap (and filesystem) IO
>   * Marcelo's swapin/out clustering code
    * Swap space preallocation at try_to_swap_out()

>   * ->writepage() IO clustering support

Hum, IMO this should be in the "2.5" list because 

1) It involves changes to the PageDirty scheme if we want to support write
clustering for normal writes, and not only shared writable mappings like
we do now. (basically this changes are in Chris Mason's patch)

2) It involves changes to the filesystem code if we want to support
generic write clustering for fs's which use block_write_full_page.

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/

Path: supernews.google.com!sn-xit-02!supernews.com!news.infoave.net!
newsfeed.mesh.ad.jp!newshub2.rdc1.sfba.home.com!news.home.com!
newshub1-work.home.com!gehenna.pell.portland.or.us!
nntp-server.caltech.edu!nntp-server.caltech.edu!mail2news96
Newsgroups: mlist.linux.kernel
Date: 	Fri, 5 Jan 2001 15:50:30 -0200 (BRDT)
From: Rik van Riel <r...@conectiva.com.br>
X-To: Marcelo Tosatti <marc...@conectiva.com.br>
X-cc: linux...@kvack.org, linux-ker...@vger.kernel.org
Subject: Re: MM/VM todo list
Message-ID: <linux.kernel.Pine.LNX.4.21.0101051549340.1295-100000@duckman.distro.conectiva>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
Approved: n...@nntp-server.caltech.edu
Lines: 38

On Fri, 5 Jan 2001, Marcelo Tosatti wrote:
> On Fri, 5 Jan 2001, Rik van Riel wrote:
> 
> > here is a TODO list for the memory management area of the
> > Linux kernel, with both trivial things that could be done
> > for later 2.4 releases and more complex things that really
> > have to be 2.5 things.
> > 
> > Most of these can be found on http://linux24.sourceforge.net/ too
> > 
> > Trivial stuff:
> > * VM: better IO clustering for swap (and filesystem) IO
> >   * Marcelo's swapin/out clustering code
>     * Swap space preallocation at try_to_swap_out()
> 
> >   * ->writepage() IO clustering support
> 
> Hum, IMO this should be in the "2.5" list because 

The non-trivial part of improved IO clustering should be a
2.5 thing indeed, but I'm not convinced there aren't any
trivial things left which can give us a nice improvement
now (and for the whole 2.4 series).

regards,

Rik
--
Virtual memory is like a game you can't win;
However, without VM there's truly nothing to loose...

		http://www.surriel.com/
http://www.conectiva.com/	http://distro.conectiva.com.br/

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/

Path: supernews.google.com!sn-xit-02!supernews.com!news.tele.dk!
128.230.129.106!news.maxwell.syr.edu!newshub2.home.com!news.home.com!
newshub1-work.home.com!gehenna.pell.portland.or.us!
nntp-server.caltech.edu!nntp-server.caltech.edu!mail2news96
Newsgroups: mlist.linux.kernel
Date: 	Fri, 5 Jan 2001 14:56:40 -0200 (BRST)
From: Marcelo Tosatti <marc...@conectiva.com.br>
X-To: Rik van Riel <r...@conectiva.com.br>
X-cc: linux...@kvack.org, linux-ker...@vger.kernel.org
Subject: Re: MM/VM todo list
Message-ID: <linux.kernel.Pine.LNX.4.21.0101051454230.2859-100000@freak.distro.conectiva>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
Approved: n...@nntp-server.caltech.edu
Lines: 21


On Fri, 5 Jan 2001, Rik van Riel wrote:

> Probably 2.5 era:
> * VM: physical->virtual reverse mapping, so we can do much
>   better page aging with less CPU usage spikes 
> * VM: move all the global VM variables, lists, etc. into the
>   pgdat struct for better NUMA scalability
> * VM: per-node kswapd for NUMA
> * VM: thrashing control, maybe process suspension with some
>   forced swapping ?             (trivial only in theory)
> * VM: experiment with different active lists / aging pages
>   of different ages at different rates + other page replacement
>   improvements
> * VM: Quality of Service / fairness / ... improvements
  * VM: Use kiobuf IO in VM instead buffer_head IO. 

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/

Path: supernews.google.com!sn-xit-02!supernews.com!newsfeed.direct.ca!
look.ca!newshub2.home.com!news.home.com!newshub1-work.home.com!
gehenna.pell.portland.or.us!nntp-server.caltech.edu!
nntp-server.caltech.edu!mail2news96
Newsgroups: mlist.linux.kernel
Date: 	Fri, 5 Jan 2001 22:13:27 +0100
From: Christoph Hellwig <h...@caldera.de>
X-To: Marcelo Tosatti <marc...@conectiva.com.br>
X-Cc: Rik van Riel <r...@conectiva.com.br>, linux...@kvack.org,
        linux-ker...@vger.kernel.org
Subject: Re: MM/VM todo list
Message-ID: <linux.kernel.20010105221326.A10112@caldera.de>
Mime-Version: 1.0
Content-Type: text/plain; charset=us-ascii
Approved: n...@nntp-server.caltech.edu
Lines: 18

On Fri, Jan 05, 2001 at 02:56:40PM -0200, Marcelo Tosatti wrote:
> > * VM: experiment with different active lists / aging pages
> >   of different ages at different rates + other page replacement
> >   improvements
> > * VM: Quality of Service / fairness / ... improvements
>   * VM: Use kiobuf IO in VM instead buffer_head IO. 

I'd vote for killing both bufer_head and kiobuf from VM.
Lokk at my pageio patch - VM doesn't know about the use of kiobufs
in the filesystem IO...

	Christoph
-- 
Whip me.  Beat me.  Make me maintain AIX.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/

Path: supernews.google.com!sn-xit-02!supernews.com!newsfeed.direct.ca!
look.ca!newshub2.rdc1.sfba.home.com!news.home.com!newshub1-work.home.com!
gehenna.pell.portland.or.us!nntp-server.caltech.edu!nntp-server.caltech.edu!
mail2news96
Newsgroups: mlist.linux.kernel
Date: 	Fri, 5 Jan 2001 19:27:38 -0200 (BRDT)
From: Rik van Riel <r...@conectiva.com.br>
X-To: Christoph Hellwig <h...@caldera.de>
X-cc: Marcelo Tosatti <marc...@conectiva.com.br>, linux...@kvack.org,
        linux-ker...@vger.kernel.org
Subject: Re: MM/VM todo list
Message-ID: <linux.kernel.Pine.LNX.4.21.0101051927040.1295-100000@duckman.distro.conectiva>
MIME-Version: 1.0
Content-Type: TEXT/PLAIN; charset=US-ASCII
Approved: n...@nntp-server.caltech.edu
Lines: 32

On Fri, 5 Jan 2001, Christoph Hellwig wrote:
> On Fri, Jan 05, 2001 at 07:20:24PM -0200, Rik van Riel wrote:
> > > >   * VM: Use kiobuf IO in VM instead buffer_head IO. 
> > > 
> > > I'd vote for killing both bufer_head and kiobuf from VM.
> > > Lokk at my pageio patch - VM doesn't know about the use of kiobufs
> > > in the filesystem IO...
> > 
> > Could be interesting ... but is it generalised enough to
> > also work with eg. network IO ?
> 
> No other then filesystem IO (page/buffercache) is actively tied
> to the VM, so there should be no problems.

Not right now, no. But if you know what is possible
(and planned) with the kiobuf layer, you should think
twice about this idea...

regards,

Rik
--
Virtual memory is like a game you can't win;
However, without VM there's truly nothing to loose...

		http://www.surriel.com/
http://www.conectiva.com/	http://distro.conectiva.com.br/

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majord...@vger.kernel.org
Please read the FAQ at http://www.tux.org/lkml/