* Using of RAID10,offset for faster writes @ 2011-04-09 12:03 David Brown 2011-04-09 15:05 ` Keld Jørn Simonsen 0 siblings, 1 reply; 3+ messages in thread From: David Brown @ 2011-04-09 12:03 UTC (permalink / raw) To: linux-raid During a discussion about RAID in another context (a Linux newsgroup), I began thinking about the speeds of the different RAID10 layouts for different usages. RAID10,far is often the fastest choice for general use - you get striped reads for large reads, and access times are good because you can get the data from either disk. The disadvantage is that writes involve a lot of extra head movement, as you need copies of the data on two widely separated areas on the each disk. But for general use, you read a lot more often than you write, so the tradeoff is worth it. In the discussion we were looking particularly at swap space on RAID. This is a usage that requires a lot of writing, especially small writes. Using the RAID10,offset layout should give you most of the benefits of RAID10,far when it comes to reading - you don't get quite as efficient block reads for large reads, but you can still do a lot of striping in the reads. And writes will involve far less head movement, and so should complete faster. Has anyone tried this, or done any benchmarking? ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Using of RAID10,offset for faster writes 2011-04-09 12:03 Using of RAID10,offset for faster writes David Brown @ 2011-04-09 15:05 ` Keld Jørn Simonsen 2011-04-10 9:50 ` David Brown 0 siblings, 1 reply; 3+ messages in thread From: Keld Jørn Simonsen @ 2011-04-09 15:05 UTC (permalink / raw) To: David Brown; +Cc: linux-raid On Sat, Apr 09, 2011 at 02:03:21PM +0200, David Brown wrote: > During a discussion about RAID in another context (a Linux newsgroup), I > began thinking about the speeds of the different RAID10 layouts for > different usages. RAID10,far is often the fastest choice for general > use - you get striped reads for large reads, and access times are good > because you can get the data from either disk. The disadvantage is that > writes involve a lot of extra head movement, as you need copies of the > data on two widely separated areas on the each disk. But for general > use, you read a lot more often than you write, so the tradeoff is worth it. > > In the discussion we were looking particularly at swap space on RAID. > This is a usage that requires a lot of writing, especially small writes. > Using the RAID10,offset layout should give you most of the benefits of > RAID10,far when it comes to reading - you don't get quite as efficient > block reads for large reads, but you can still do a lot of striping in > the reads. And writes will involve far less head movement, and so > should complete faster. > > Has anyone tried this, or done any benchmarking? > > -- > To unsubscribe from this list: send the line "unsubscribe linux-raid" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html Some tests indicate that the theoretical slower writing speed of raid10,far tends to be minimized by the elevator algoritm for the disk. Writes are normally just delivered to the kernel in-core buffers, and then every 30 secs or so flushed to the disk. The elevator orders this writing to minimize head movement. So there is almost no penalty for writes for raid10,far. Anyway, for swapping the paetition siz is normally quite small, say 2 to 10 GB, and head movement is thus quite small. Tests show that raid10,offset does not really stripe sequential reads. Anyway it would be interesting to see tests on swapping on rid10,offset vs raid10,far. I am not sure how to test it. But it could be load times for eg. openoffice in a swapped state - loading a big app is one of the areas where you would notice the speed most in a user environment. Tht could be the reading test. For the writing test, one could operate with a rather small swap partition, and then load a lot of big apps. Best regards Keld ^ permalink raw reply [flat|nested] 3+ messages in thread
* Re: Using of RAID10,offset for faster writes 2011-04-09 15:05 ` Keld Jørn Simonsen @ 2011-04-10 9:50 ` David Brown 0 siblings, 0 replies; 3+ messages in thread From: David Brown @ 2011-04-10 9:50 UTC (permalink / raw) To: linux-raid On 09/04/11 17:05, Keld Jørn Simonsen wrote: > On Sat, Apr 09, 2011 at 02:03:21PM +0200, David Brown wrote: >> During a discussion about RAID in another context (a Linux newsgroup), I >> began thinking about the speeds of the different RAID10 layouts for >> different usages. RAID10,far is often the fastest choice for general >> use - you get striped reads for large reads, and access times are good >> because you can get the data from either disk. The disadvantage is that >> writes involve a lot of extra head movement, as you need copies of the >> data on two widely separated areas on the each disk. But for general >> use, you read a lot more often than you write, so the tradeoff is worth it. >> >> In the discussion we were looking particularly at swap space on RAID. >> This is a usage that requires a lot of writing, especially small writes. >> Using the RAID10,offset layout should give you most of the benefits of >> RAID10,far when it comes to reading - you don't get quite as efficient >> block reads for large reads, but you can still do a lot of striping in >> the reads. And writes will involve far less head movement, and so >> should complete faster. >> >> Has anyone tried this, or done any benchmarking? >> >> -- >> To unsubscribe from this list: send the line "unsubscribe linux-raid" in >> the body of a message to majordomo@vger.kernel.org >> More majordomo info at http://vger.kernel.org/majordomo-info.html > > Some tests indicate that the theoretical slower writing speed of > raid10,far tends to be minimized by the elevator algoritm for the disk. > Writes are normally just delivered to the kernel in-core buffers, and > then every 30 secs or so flushed to the disk. The elevator orders this > writing to minimize head movement. So there is almost no penalty for > writes for raid10,far. > I suppose I was thinking of cases where you have an fsync on the data, or otherwise require the file (or metadata, or fs journal, etc.) to be committed to the disk. For "normal" writes, write speed seldom matters as they sit in memory caches. But it's a good point. > Anyway, for swapping the paetition siz is normally quite small, say 2 to > 10 GB, and head movement is thus quite small. > Yes, that's true for swap partitions. Perhaps something like database files would be a better example, where you might have more writes than on general use file systems? > Tests show that raid10,offset does not really stripe sequential reads. > Anyway it would be interesting to see tests on swapping on rid10,offset > vs raid10,far. I am not sure how to test it. But it could be load times > for eg. openoffice in a swapped state - loading a big app is one of the > areas where you would notice the speed most in a user environment. Tht > could be the reading test. For the writing test, one could operate with > a rather small swap partition, and then load a lot of big apps. > For testing swap speed, it might be easiest to make a large tmpfs system and copy data back and forth to it. Anyway, you've given me a few points to think about - and probably RAID10,far is "the" answer for now! If only mdadm supported resizing and reshaping of this level, it would be the ideal choice in many circumstances. -- To unsubscribe from this list: send the line "unsubscribe linux-raid" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html ^ permalink raw reply [flat|nested] 3+ messages in thread
end of thread, other threads:[~2011-04-10 9:50 UTC | newest] Thread overview: 3+ messages (download: mbox.gz follow: Atom feed -- links below jump to the message on this page -- 2011-04-09 12:03 Using of RAID10,offset for faster writes David Brown 2011-04-09 15:05 ` Keld Jørn Simonsen 2011-04-10 9:50 ` David Brown
This is a public inbox, see mirroring instructions for how to clone and mirror all data and code used for this inbox; as well as URLs for NNTP newsgroup(s).