On Sat, Apr 4, 2015 at 11:18 AM, Alexander Motin <[email protected]> wrote:

> On 04.04.2015 19:08, Matthew Ahrens wrote:
> > Strided prefetch: mostly evil.
> >
> > I've rewritten the predictive prefetcher; new version only detects
> > forward sequential streams.  Will propose for upstreaming soon.  In the
> > mean time feel free to check out:
> >
> >
> https://github.com/delphix/delphix-os/commit/13cf8efe4b6b10930b478a15f9de92880bbdd412
>
> Ah. Thank you. I haven't tried it yet, but I like some ideas there,
> while the rest can probably be justified by simplicity. I just slightly
> worry that with your patch single large read does not start prefetch.
>

Actually I fixed that in some later commits.  Will upstream it all together.


> From one side that may be counted as correct behavior (request was
> indeed only one and we have no idea whether there will be the second),
> but if the second request arrive -- cache has nothing for it at all, not
> even started.
>
> Generally I hope "soon" happen sooner then in another six months,
> otherwise we could start cutting out strides less aggressively, starting
> from my less invasive patch. ;)
>

I have a dozen reviews out; help review them and I'll be able to get to the
prefetch stuff faster :-)


>
> PS: FreeBSD code style does not recommend inline definition of
> variables, that you used several times in your patch.
>
>
No C99 in FreeBSD?  I didn't realize that illumos was the only operating
system that's updated its language in the past 15 years :-P  Personally, I
find that reducing variable scope increases readability as well as helps
avoid bugs.

--matt
_______________________________________________
developer mailing list
[email protected]
http://lists.open-zfs.org/mailman/listinfo/developer

Reply via email to