> From: Rik van Riel [mailto:riel@xxxxxxxxxx] > Subject: Re: [PATCH] mm: implement WasActive page flag (for improving cleancache) > > On 01/26/2012 07:56 PM, Dan Magenheimer wrote: > > > The patch resolves issues reported with cleancache which occur > > especially during streaming workloads on older processors, > > see https://lkml.org/lkml/2011/8/17/351 > > > > I can see that may not be sufficient, so let me expand on it. > > > > First, just as page replacement worked prior to the active/inactive > > redesign at 2.6.27, cleancache works without the WasActive page flag. > > However, just as pre-2.6.27 page replacement had problems on > > streaming workloads, so does cleancache. The WasActive page flag > > is an attempt to pass the same active/inactive info gathered by > > the post-2.6.27 kernel into cleancache, with the same objectives and > > presumably the same result: improving the "quality" of pages preserved > > in memory thus reducing refaults. > > > > Is that clearer? If so, I'll do better on the description at v2. > > Whether or not this patch improves things would depend > entirely on the workload, no? > > I can imagine a workload where we have a small virtual > machine and a large cleancache buffer in the host. > > Due to the small size of the virtual machine, pages > might not stay on the inactive list long enough to get > accessed twice in a row. > > This is almost the opposite problem (and solution) of > what you ran into. > > Both seem equally likely (and probable)... Hi Rik -- Thanks for the reply! Yes, that's right, in your example, the advantage of cleancache would be lost. But the cost would also be nil because the cleancache backend (zcache) would be rejecting the inactive pages so would never incur any compression cost and never use any space. So "first, do no harm" is held true. To get the best of both (like the post-2.6.27 kernel page replacement algorithm), the cleancache backend could implement some kind of active/inactive balancing... but that can be done later with no mm change beyond the proposed patch. > When the page gets rescued from the cleancache, we > know it was recently evicted and we can immediately > put it onto the active file list. True, that would be another refinement. The proposed patch does, however, turn on WasActive so, even if the page never makes it back to the active lru, it will still go back into cleancache when evicted from the pagecache. Dan -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href