On 12/12/2014 12:41, Bart Van Assche wrote:
On 12/12/14 10:35, Akira Hayakawa wrote:
Writeboost batches number of writes into a log (that is 512KB large)
and submits to SSD
which maximizes the throughput and the lifetime of the SSD.
Does this mean that dm-writeboost is similar to btier ? If so, this
makes me wonder which of these two subsystems would be the best
candidate for upstream inclusion. As far as I know btier doesn't split
bio's. The source code of btier can be downloaded from
http://sourceforge.net/projects/tier/.
No, Btier is a caching (tiering actually but there is little difference)
software like bcache or dm-cache, which are are open source software
reimplementations of things like LSI CacheCade.
OTOH dm-writeboost is an open source software reimplementation of a BBWC
(battery backed write cache) of disk controllers.
For this reason dm-writeboost was unique in its class and no doubt it
could be blazing fast (untested by me) if correctly implemented, orders
of magnitude faster than caching softwares, and I was looking forward to
see dm-writeboost into the kernel.
But me too I think that dm-writeboost really needs not to split BIOs
(whoever thinks differently has probably never looked at perf while a
very fast raid system was writing data), and as much as possible not
perform memcopy, and would need to detect and skip sequential I/O
(adding logic to still be safe on sync + power loss) and use
writethrough for that which I think it also doesn't do. These are
absolute requirements for high performance storage systems in the 2-20
gigabytes per second range. If Akira doesn't see the need to not perform
memcpy or not split BIOs or not skip sequential I/O it is most certainly
because he hasn't tried to build a high performance storage system.
Unfortunately I think that high performance storage systems are indeed
the main market for writeboost, so that's why these things are needed.
Another important missing feature is way to decommission writeboost or
put it into writethrough mode, so to be able to snapshot the underlying
device. This is totally needed in an industrial-grade production system.
OTOH read caching would have been useless for writeboost btw imho, and
hence counterproductive. Layer dm-cache or bcache on top of writeboost
if you need that.
S.
--
dm-devel mailing list
dm-devel@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/dm-devel