Bruce Evans wrote: > On Wed, 17 Jan 2007, Matthew Dillon wrote: >> * No extranious memory writes, no uncached extranious memory reads. >> If you do any writes to memory other then to the copy destination >> in your copy loop you screw up the cpu's write fifo and destroy >> performance. >> >> Systems are so sensitive to this that it is even better to spend the >> time linearly mapping large copy spaces into KVM and do a single >> block copy then to have an inner per-PAGE loop. > > > I haven't tried this, but have seen and partly worked sensitivity to > linear KVA maps not being physically (non)linear enough. Some CPUs > and/or memory systems are remarkably sensitive to bank interleave. > FreeBSD's page coloring doesn't know anything about banks, and > accidentally starts up with perfect miscoloring for banks. This can > make a difference of 30% for bzero bandwidth in benchmarks (not so > much for bcopy bandwidth, and an insignificant amount for normal use). > After the system warms up, the coloring becomes random with respect > to banks, and random coloring works much better than perfect miscoloring. About page coloring: Don't amd64 CPUs have virtually indexed, physically tagged caches? If so, wouldn't it make sense to turn off page coloring, since it's useless for virtually indexed caches (and probably hurts things a bit)? -- SuleimanReceived on Thu Jan 18 2007 - 07:04:28 UTC
This archive was generated by hypermail 2.4.0 : Wed May 19 2021 - 11:39:04 UTC