All of lore.kernel.org
 help / color / mirror / Atom feed
* file journal fadvise
@ 2014-11-30 18:46 Sage Weil
  2014-12-01  2:09 ` 马建朋
  0 siblings, 1 reply; 15+ messages in thread
From: Sage Weil @ 2014-11-30 18:46 UTC (permalink / raw)
  To: mnelson, ceph-devel

Currently, when an OSD journal is stored as a file, we preallocate it as a 
large contiguous extent.  That means that for every journal write we're 
seeking back to wherever the journal is.  That possibly not ideal for 
writes.  For reads it's great, but that's the last thing we care about 
optimizing (we only read the journal after a failure, which is very rare).

I wonder if we would do better if we:

 1- trim/discard the old journal contents,
 2- posix_fadvise RANDOM

I'm not sure what the XFS behavior is in this case, but ideally it seems 
what we want it to do is write the journal wherever on disk it is most 
convenient... ideally contiguous with some other write that it is already 
doing.  If fadvise random doesn't do that, perhaps there is another 
allocator hint we can give it that will get us that behavior...

sage

^ permalink raw reply	[flat|nested] 15+ messages in thread

end of thread, other threads:[~2014-12-02  2:02 UTC | newest]

Thread overview: 15+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2014-11-30 18:46 file journal fadvise Sage Weil
2014-12-01  2:09 ` 马建朋
2014-12-01  3:26   ` Sage Weil
2014-12-01 19:18     ` Mark Nelson
2014-12-01 19:23       ` Sage Weil
2014-12-01 22:31         ` Mark Nelson
2014-12-01 22:31           ` Mark Nelson
2014-12-01 22:51           ` Dave Chinner
2014-12-02  0:12             ` Sage Weil
2014-12-02  0:12               ` Sage Weil
2014-12-02  0:32               ` Dave Chinner
2014-12-02  0:32                 ` Dave Chinner
2014-12-02  1:24                 ` Sage Weil
2014-12-02  2:01                   ` Dave Chinner
2014-12-02  2:01                     ` Dave Chinner

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.