lkml.org 
[lkml]   [2001]   [Jun]   [4]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
Date
From
SubjectRe: [PATCH] balance inactive_dirty list
> while observing lots of different workloads (all I/O bound). Finally,

well, not all loads are IO-bound in the sense you're looking at.
in particular, the test I usually run (make -j2 with mem=48m)
is actually hurt by this patch. but you're right, this change
does improve streaming IO.

> We're trying to be too clever there, and that eventually hurts
> performance because inactive_dirty list is too small for typical

I certainly agree the code is dubious, but this is the reason
inactive_target exists, afaikt.

> have tested. The patch simplifies code a lot and removes unnecessary
> complex calculation. Code is now completely autotuning. I have a

otoh, the "complex calculation" was always trivial,
and *more* autotuning than your suggested fix...

> - if (!target) {
> - int inactive = nr_free_pages() + nr_inactive_clean_pages() +
> - nr_inactive_dirty_pages;
> - int active = MAX(nr_active_pages, num_physpages / 2);
> - if (active > 10 * inactive)
> - maxscan = nr_active_pages >> 4;
> - else if (active > 3 * inactive)
> - maxscan = nr_active_pages >> 8;
> - else
> - return 0;
> - }
> + if (!target)
> + maxscan = nr_active_pages >> 4;

-
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/

\
 
 \ /
  Last update: 2005-03-22 12:54    [W:0.036 / U:0.108 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site