Messages in this thread | | | Date | Wed, 8 Sep 2004 16:30:36 -0300 | From | Marcelo Tosatti <> | Subject | Re: swapping and the value of /proc/sys/vm/swappiness |
| |
On Wed, Sep 08, 2004 at 02:35:03PM -0500, Ray Bryant wrote: > > > Marcelo Tosatti wrote: > > > > > > >Huh, that changes the meaning of the dirty limits. Dont think its suitable > >for mainline. > > > > > > The change is, in fact, not much different from what is already actually > there. The code in get_dirty_limits() adjusts the value of the user > supplied parameters in /proc/sys/vm depending on how much mapped memory > there is. If you undo the convoluted arithmetic that is in there, one > finds that if you are using the default dirty_ratio of 40%, then if the > unmapped_ratio is between 80% and 10%, then > > dirty_ratio = unmapped_ratio / 2; > > and, a little bit of algebra later: > > dirty = (total_pages - wbs->nr_mapped)/2 > > and > > background = dirty_background_ratio/vm_background_ratio * (total_pages > - wbs->nr_mapped) > > That is, for a wide range of memory usage, you are really running with an > dirty ratio of 50% stated in terms of the number of unmapped pages, and > there is no direct way to override this.
OK I see, yes.
> Of course, at the edges, the code changes these calculations. It just > seems to me that rather than continue the convoluted calculation that is in > get_dirty_limits(), we just make the outcome more explicit and tell the user > what is really going on. > > We'd still have to figure out how to encourage a minimum page cache size of > some kind, which is what I understand the 5% min value for dirty_ratio is > in there for.
For the user "dirty_ratio" and "dirty_background_ratio" means "percentage of total memory" (thats how it has been traditionally in Linux). And right now, as you noted, we dont do that way.
There's probably a good reason for the "no more than half of unmapped memory". Andrew ? - 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/
| |