[CFT] Improved ZFS metaslab code (faster write speed)
Pawel Jakub Dawidek
pjd at FreeBSD.org
Sat Aug 28 09:26:17 UTC 2010
On Sat, Aug 28, 2010 at 05:03:42AM -0400, jhell wrote:
> On 08/28/2010 04:20, Andriy Gapon wrote:
> > on 28/08/2010 04:24 jhell said the following:
> >> The modified patch from avg@ (portion patch) is:
> >>
> >> #ifdef _KERNEL
> >> if (arc_reclaim_needed()) {
> >> needfree = 0;
> >> wakeup(&needfree);
> >> }
> >> #endif
> >>
> >> I still moved that down to below _KERNEL for the obvious reasons. But
> >> when I was using the original patch with if (needfree) I noticed a
> >> performance degradation after ~12 hours of use with and without UMA
> >> turned on. So far with ~48 hours of testing with the top half of that
> >> being with the above change, I have not seen more degradation of
> >
> > This is quite unexpected.
> > needfree should be checked as the very first thing in arc_reclaim_needed()
> > [unless you have patched it locally]. So if needfree is 1 then
> > arc_reclaim_needed() should also return 1. But the converse is not true,
> > arc_reclaim_needed() may return 1 even if needfree is zero.
> >
> > So if your testing results are conclusive then it must mean that some extra
> > wakeups on needfree are needed. I.e. needfree is zero, so there shouldn't be
> > anything waiting on it (see arc_lowmem) and no notification should be needed,
> > but issuing somehow does make difference,
> > Hmm...
> >
>
> I will look further into this and see if I can throw a counter around it
> or some printf's so I can at least log what its doing in both instances.
>
> I thought the very same thing you said above when I saw your patch for
> that and was astounded at the results that were returned from it. So in
> short testing I reverted it back quickly to see if that was the cause of
> the problem and sure enough everything resumed to the way it was before.
>
> Anyway thanks for the reply. I will get back to you if I see anything
> cool arise from this.
Could you include the following patch to your testing:
http://people.freebsd.org/~pjd/patches/arc.c.9.patch
--
Pawel Jakub Dawidek http://www.wheelsystems.com
pjd at FreeBSD.org http://www.FreeBSD.org
FreeBSD committer Am I Evil? Yes, I Am!
-------------- next part --------------
A non-text attachment was scrubbed...
Name: not available
Type: application/pgp-signature
Size: 196 bytes
Desc: not available
Url : http://lists.freebsd.org/pipermail/freebsd-current/attachments/20100828/12535b9a/attachment.pgp
More information about the freebsd-current
mailing list