On Fri, Mar 28, 2014 at 01:23:06PM -0400, Ed Maste wrote: > On 28 March 2014 12:07, Konstantin Belousov <k...@freebsd.org> wrote: > > Author: kib > > Date: Fri Mar 28 16:07:27 2014 > > New Revision: 263878 > > URL: http://svnweb.freebsd.org/changeset/base/263878 > > > > Log: > > Several fixes for the PCID implementation: > > I'd like to revert r262765 (where I disabled it by default) to get > broader testing on this; do you see any reason I should wait instead?
I am on edge there. From one side, enabling PCID degrades the pgbench (?) by 10% at least on many-cores machines. This is understandable, since committed implementation keeps track of the cpus which has translation information cached for the given pmap, and invalidation IPIs must be broadcasted to the whole set of the cpus. The set is larger than the set of cpus for which the pmap is active, so the overhead from TLB shootdown is larger. On the other side, on the desktop-class hw, i.e. 4 cores/8 threads, there is no significant degradation, AFAIR. And, in microbenchmarks, the context switch latency is improved up to 2 times regardless of the machine class. So I initially delayed disabling the PCID, after the pgbench results were published, but now I similarly do now want much to change the defaults back to enabled. Might be, do it in HEAD only ?
pgp8_foBdUH0B.pgp
Description: PGP signature