Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > linux.kernel > #1261205
| From | Dan Williams <dan.j.williams@intel.com> |
|---|---|
| Newsgroups | linux.kernel |
| Subject | Re: [PATCH v3 02/15] dax: increase granularity of dax_clear_blocks() operations |
| Date | 2015-11-03 06:40 +0100 |
| Message-ID | <qqCu5-6TC-1@gated-at.bofh.it> (permalink) |
| References | <qqf4t-Og-3@gated-at.bofh.it> <qqf4t-Og-7@gated-at.bofh.it> <qqy77-3Xq-3@gated-at.bofh.it> <qqAsh-5Cv-1@gated-at.bofh.it> <qqBHH-6kT-7@gated-at.bofh.it> |
| Organization | linux.* mail to news gateway |
On Mon, Nov 2, 2015 at 8:48 PM, Dave Chinner <david@fromorbit.com> wrote: > On Mon, Nov 02, 2015 at 07:27:26PM -0800, Dan Williams wrote: >> On Mon, Nov 2, 2015 at 4:51 PM, Dave Chinner <david@fromorbit.com> wrote: >> > On Sun, Nov 01, 2015 at 11:29:53PM -0500, Dan Williams wrote: >> > The zeroing (and the data, for that matter) doesn't need to be >> > committed to persistent store until the allocation is written and >> > committed to the journal - that will happen with a REQ_FLUSH|REQ_FUA >> > write, so it makes sense to deploy the big hammer and delay the >> > blocking CPU cache flushes until the last possible moment in cases >> > like this. >> >> In pmem terms that would be a non-temporal memset plus a delayed >> wmb_pmem at REQ_FLUSH time. Better to write around the cache than >> loop over the dirty-data issuing flushes after the fact. We'll bump >> the priority of the non-temporal memset implementation. > > Why is it better to do two synchronous physical writes to memory > within a couple of microseconds of CPU time rather than writing them > through the cache and, in most cases, only doing one physical write > to memory in a separate context that expects to wait for a flush > to complete? With a switch to non-temporal writes they wouldn't be synchronous, although it's doubtful that the subsequent writes after zeroing would also hit the store buffer. If we had a method to flush by physical-cache-way rather than a virtual address then it would indeed be better to save up for one final flush, but when we need to resort to looping through all the virtual addresses that might have touched it gets expensive. -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
Back to linux.kernel | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
[PATCH v3 02/15] dax: increase granularity of dax_clear_blocks() operations Dan Williams <dan.j.williams@intel.com> - 2015-11-02 05:40 +0100
Re: [PATCH v3 02/15] dax: increase granularity of dax_clear_blocks() operations Dave Chinner <david@fromorbit.com> - 2015-11-03 02:00 +0100
Re: [PATCH v3 02/15] dax: increase granularity of dax_clear_blocks() operations Dan Williams <dan.j.williams@intel.com> - 2015-11-03 04:30 +0100
Re: [PATCH v3 02/15] dax: increase granularity of dax_clear_blocks() operations Dave Chinner <david@fromorbit.com> - 2015-11-03 05:50 +0100
Re: [PATCH v3 02/15] dax: increase granularity of dax_clear_blocks() operations Dan Williams <dan.j.williams@intel.com> - 2015-11-03 06:40 +0100
Re: [PATCH v3 02/15] dax: increase granularity of dax_clear_blocks() operations Dave Chinner <david@fromorbit.com> - 2015-11-03 07:00 +0100
Re: [PATCH v3 02/15] dax: increase granularity of dax_clear_blocks() operations Dan Williams <dan.j.williams@intel.com> - 2015-11-03 08:30 +0100
Re: [PATCH v3 02/15] dax: increase granularity of dax_clear_blocks() operations Jan Kara <jack@suse.cz> - 2015-11-03 17:30 +0100
Re: [PATCH v3 02/15] dax: increase granularity of dax_clear_blocks() operations Ross Zwisler <ross.zwisler@linux.intel.com> - 2015-11-03 19:00 +0100
Re: [PATCH v3 02/15] dax: increase granularity of dax_clear_blocks() operations Dave Chinner <david@fromorbit.com> - 2015-11-03 22:10 +0100
csiph-web