[PATCH] Adaptive spinning for lockmgr

Kris Kennaway kris at FreeBSD.org
Sun Jun 14 13:01:45 UTC 2009

Attilio Rao wrote:
> This patch enables adaptive spinning for lockmgr:
> http://www.freebsd.org/~attilio/adaptive_lockmgr.diff
> and it should presumably improve performance on disks/vfs/buffer cache
> based benchmarks, so, if you want to try out and report any benchmarks
> result, I'd love to see it.
> Please note that there are some parameters to tune: for example, you
> would like to not enable adaptive spinning to default while you just
> want that for a class of locks (and in that case you want to apply the
> reversed logic for what is living now) or you want to use different
> values  for retries and loops. Interested developers can refer to such
> 3 variables.
> Peter Holm alredy tested that patch for about 24hours without any
> regression to report.
> Also note that the patch is not 100% yet as long as it needs UPDATES
> and manpages updates, but they will be added just in time before to
> commit.
> The modify is all there.

I have a vague memory that we had tested a version of this in the past 
and found that it caused a performance loss in common cases?  Many 
lockmgr callers are not amenable to adaptive spinning because they have 
to wait on slow I/O.  Testing only with e.g. md backing might give 
results that are non-representative.


More information about the freebsd-smp mailing list