Richard Braun <rbr...@sceen.net> writes: > On Mon, Apr 02, 2012 at 08:43:41PM +0300, Maksym Planeta wrote: >> Sergio Lopez <s...@sinrega.org> writes: >> > Instead of implementing a new call, I think >> > memory_object_change_attributes should be extended to support setting >> > the cluster size for a given object. >> >> Indeed, this seems to be better. > > No, as 1/ the call applies to a memory range, like vm_protect, and > 2/ it's about more than a cluster size. >
Really. I had to read documentation first :-/ > As a side note, I'd like to remind that it's more important to focus on > the kernel/pagers protocol than applications/POSIX support. > I mentioned this in my proposal. But after Sergio's mail, I'm slightly in doubt if implementing almost everything in kernel is right way. >For now, you could even mostly ignore that readahead policy can be >changed (keep it in mind to isolate its implementation, but adding a >default policy only would still do). The vm_advise call should be added >later, when actually allowing applications to change the policy. This is the way how OSF Mach works and how KAM has chosen to do readahead. But what if, as Sergio said, cluster size is bigger, than size of consecutive placed pages, performance would not grow (and sometimes even decrease), as pager has to supply not least than it was asked. I mean that, probably, there is sense to move most part of logic to libpager to make readahead more flexible. Regards, Maksym Planeta.