On 06/05/2010 19:08, Michael Sullivan wrote:
Hi Marc,
Well, if you are striping over multiple devices the you I/O should be
spread over the devices and you should be reading them all
simultaneously rather than just accessing a single device.
Traditional striping would give 1/n performance improvement rather
than 1/1 where n is the number of disks the stripe is spread across.
The round-robin access I am referring to, is the way the L2ARC vdevs
appear to be accessed. So, any given object will be taken from a
single device rather than from several devices simultaneously, thereby
increasing the I/O throughput. So, theoretically, a stripe spread
over 4 disks would give 4 times the performance as opposed to reading
from a single disk. This also assumes the controller can handle
multiple I/O as well or that you are striped over different disk
controllers for each disk in the stripe.
SSD's are fast, but if I can read a block from more devices
simultaneously, it will cut the latency of the overall read.
Keep in mind that the largest block is currently 128KB and you always
need to read an entire block.
Splitting a block across several L2ARC devices would probably decrease
performance and would invalidate all blocks if only a single l2arc
device would die. Additionally having each block only on one l2arc
device allows to read from all of l2arc devices at the same time.
--
Robert Milkowski
http://milek.blogspot.com
_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss