Sounds like something that can be altered with a tuneable for workloads
where power efficiency is more important than performance.
As far as performance goes, empty memory is wasted memory. I think the
most important 'measurement' people can make for swap prefetch, if this
is even possible to capture, is a positive hit ratio. Under everyman's
typical workload, what percentage of pages prefetched end up being used?
And what percentage end up discarded? I'm pulling these numbers out of
thin air, but I would say, if > 10% is referenced, and < 70% discarded,
then that would be significant performance boost well worthwhile.
To be clear, I don't know what I'm talking about. It just seems to me
however, that debating whether or not to implement a performance boost
because we can better tune corner cases is silly. For as long as
computers have used swap and unused memory, there will be a performance
gain to background prefetching. That doesn't preclude developers from
tuning the specific workloads that lead to such. It's not like this
were a theoretical discussion of should we develop this or not..
Prefetch is here, now, and working. The only questions I see are:
Does the performance gain from Prefetch compensate for the prefetch code
memory requirements?
Is there someone who's comfortable with lkml politics willing to
maintain the thing?
-