Łukasz wrote:
>> You're right that we need to issue more i/os in
>> parallel -- see 6333409 
>> "traversal code should be able to issue multiple
>> reads in parallel"
> 
> When do you think it will be available ?

Perhaps by the end of the calendar year, but perhaps longer.  Maybe sooner 
if you work on it :-)

>> However, it may be much more straightforward to just
>> issue prefetches 
>> appropriately, rather than attempt to coordinate
>> multiple threads.  That 
>> said, feel free to experiment.
> 
> How can I prefetch data ? Traverse dataset in second thread ?

No; see dmu_prefetch().

> Correct me if I'm wrong. 
> Adding simple buffering could speed up sending operation. Now for each packet
> we are calling [b]vn_rdwr[/b] function.

Perhaps; try timing with "zfs send ... > /dev/null".  However much faster 
that is than sending it to your preferred location is the maximum amount of 
performance to be gained.

> What do you think about smaller dmu_replay_record_t struct.
> Remove
>   char drr_toname[MAXNAMELEN];
> from drr_begin struct and for DRR_BEGIN command add read/write MAXNAMELEN 
> bytes.

Yeah, that would be nice.  But it would sure be nice to be able to still 
read the old-style records too.

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

Reply via email to