On 05/19/2011 07:47 PM, Richard Elling wrote:
> On May 19, 2011, at 5:35 AM, Sašo Kiselkov wrote:
> 
>> Hi all,
>>
>> I'd like to ask whether there is a way to monitor disk seeks. I have an
>> application where many concurrent readers (>50) sequentially read a
>> large dataset (>10T) at a fairly low speed (8-10 Mbit/s). I can monitor
>> read/write ops using iostat, but that doesn't tell me how contiguous the
>> data is, i.e. when iostat reports "500" read ops, does that translate to
>> 500 seeks + 1 read per seek, or 50 seeks + 10 reads, etc? Thanks!
> 
> In general, this is hard to see from the OS.  In Solaris, the default I/O
> flowing through sd gets sorted based on LBA before being sent to the
> disk. If the disks gets more than 1 concurrent I/O request (10 is the default
> for Solaris-based ZFS) then the disk can resort or otherwise try to optimize
> the media accesses.
> 
> As others have mentioned, iopattern is useful for looking a sequential 
> patterns. I've made some adjustments for the version at
> http://www.richardelling.com/Home/scripts-and-programs-1/iopattern
> 
> You can see low-level SCSI activity using scsi.d, but I usually uplevel that
> to using "iosnoop -Dast" which shows each I/O and its response time.
> Note that the I/Os can complete out-of-order on many devices. The only 
> device I know that is so fast and elegant that it always completes in-order 
> is the DDRdrive.
> 
> For detailed analysis of iosnoop data, you will appreciate a real statistics
> package. I use JMP, but others have good luck with R.
>  -- richard

Thank you, the iopattern script seems to be quite close to what I
wanted. The percentage split between random and sequential I/O is pretty
much what I needed to know.

Regards,
--
Saso
_______________________________________________
zfs-discuss mailing list
zfs-discuss@opensolaris.org
http://mail.opensolaris.org/mailman/listinfo/zfs-discuss

Reply via email to