Re: Why active list and inactive list?

Balbir Singh
2007-01-23T03:37:00Z

Rik van Riel wrote:
> Christoph Lameter wrote:
>
>> With the proposed schemd you would have to move pages between lists if
>> they are mapped and unmapped by a process. Terminating a process could
>> lead to lots of pages moving to the unnmapped list.
>
> That could be a problem.
>
> Another problem is that any such heuristic in the VM is
> bound to have corner cases that some workloads will hit.
>
> It would be really nice if we came up with a page replacement
> algorithm that did not need many extra heuristics to make it
> work...
>

Yes, it's damn hard at times. I was reading through an article
(Architectural support for translation table management in large address
space machines - Huck and Hayes), it talks about how Object Oriented
Systems encourage more sharing and decrease the locality of resulting
virtual address memory stream. Even multi threading tends to impact
locality of references.

Unfortunately, we have only heuristics to go by and of-course their
mathematical model.

I have always wondered if it would be useful to have a kernel debug
feature that can extract page references per task, it would be good
to see the page references (last 'n') of a workload that is not
doing too well on a particular system.

--
Balbir Singh
Linux Technology Center
IBM, ISTL