Messages in this thread | | | Date | Sun, 10 Jan 1999 19:33:42 +0100 (CET) | From | Andrea Arcangeli <> | Subject | Re: Results: pre6 vs pre6+zlatko's_patch vs pre5 vs arcavm13 |
| |
On Sat, 9 Jan 1999, Linus Torvalds wrote:
> Can you run pre6+zlatko with just the mm/page_alloc.c one-liner reverted > to pre5? That is, take pre6+zlatko, and just change
I have no time to try code these days :(
> try_to_free_pages(gfp_mask, freepages.high - nr_free_pages); > > back to > > try_to_free_pages(gfp_mask, SWAP_CLUSTER_MAX); > > That particular one-liner was almost certainly a mistake, it was done on > the mistaken assumption that the clustering problem was due to > insufficient write-time clustering - while zlatko found that it was > actually due to fragmentation in the swap area. With zlatkos patch, the > original SWAP_CLUSTER_MAX is probably better and almost certainly results > in smoother behaviour due to less extreme free_pages..
I don't know which is zlatkos patch but my point is that it's try_to_free_pages that has to care to be balanced and to do things at best. I want to be allowed to ask try_to_free_pages to free any kind of space and such function has to run _always_ efficient.
My current free_user_and_cache() (arca-vm-13) is bad because it doesn't swapout aggressively. I am fixing it right now. When I'll have finished I'll post the new patch.
BTW, the reason pre6 is slower than my current _bad_ free_user_and_cache() (arca-vm-13) in low memory machines is that in high memory machines the freepages.min is something like 255 while in low memory machines freepages.min it's close to SWAP_CUSTER_MAX. So in low memory machines the swapout cluster has to be reduced (because now swapout doesn't free pages). free_user_and_cache() has to care about these issues and I see plain wrong to hardwire the swap cluster size to a constant number since the freepages values are dynamic (and also changable via sysctl).
I am not sure of all this, but this is currently my thought.
Comments?
Andrea Arcangeli
- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.rutgers.edu Please read the FAQ at http://www.tux.org/lkml/
| |