On Mon, Jan 11, 2010 at 10:30 PM, Richard Elling
<richard.elling at gmail.com> wrote:
> I misinterpreted the question. My answer assumes reads from the same file.
>
> AFAIK, there is no thread-level I/O scheduler in Solaris. ZFS uses a priority
> scheduler which is based on the type of I/O and there are some other
> resource management policies implemented. By default, ZFS will queue
> 35 I/Os to each leaf vdev, so it is not clear that scheduling above the ZFS
> level will be as effective as one might presume, based on how other
> systems implement I/O scheduling.
>
> Solaris does have CPU, network, and memory resource management.
Do you mean that Solaris supports fair memory bandwidth sharing?


Regards,
Andrey
> ?-- richard
>
> On Jan 11, 2010, at 11:21 AM, Richard Elling wrote:
>
>> On Jan 11, 2010, at 8:05 AM, bank kus wrote:
>>
>>> As of 2009.06 what is the policy with reordering ZFS file reads i.e., 
>>> consider the following timeline:
>>> T0: ?Process A issues read of size 20K and gets its thread switched out
>>>
>>> T1: ?Process B issues reads of size 8 bytes and gets its thread switched out
>>>
>>> Are the 8 byte reads from B going to fall in queue _behind_ A if:
>>
>> Order is not preserved in either the OS or the device. The data will be 
>> cached
>> in the device, ZFS vdev cache, ARC, and L2ARC. At some point in time, the
>> data will be evicted, depending on the cache demand and policies. It is 
>> unlikely
>> that the media will be read twice if both reads are issued at near the same
>> time.
>>
>>> --> if A and B are from separate users?
>>> --> If B is from the system process?
>>
>> Doesn't matter. None of those caches are tagged by pid.
>> -- richard
>>
>
> _______________________________________________
> zfs-code mailing list
> zfs-code at opensolaris.org
> http://mail.opensolaris.org/mailman/listinfo/zfs-code
>

Reply via email to