Hello Łukasz, Monday, July 23, 2007, 1:19:16 PM, you wrote:
Ł> ZFS send is very slow. Ł> dmu_sendbackup function is traversing dataset in one thread and in Ł> traverse callback function ( backup_cb ) we are waiting for data in Ł> arc_read called with ARC_WAIT flag. Ł> I want to parallize zfs send to make it faster. Ł> dmu_sendbackup could allocate buffer, that will be used for buffering output. Ł> Few threads can traverse dataset, few threads would be used for async read operations. Ł> I think it could speed up zfs send operation 10x. Ł> What do you think about it ? I guess you should check with Matthew Ahrens as IIRC he's working on 'zfs send -r' and possibly some other improvements to zfs send. The question is what code changes Matthew has done so far (it hasn't been integrated AFAIK) and possibly work from there. Or perhaps Matthew is already working on it also... Now, if zfs resides on lots of disks then I guess it should speed up zfs send considerably, at least in some cases (lot of small files, written/deleted/created randomly). Then it would be great if you could implement something and share with us some results to see if there's actually some performance gain. Also I guess you'll have to write all transactions to the other end (zfs recv) in the same order they were created on disk,or not? ps. Lukasz - nice to see you here more and more :) -- Best regards, Robert mailto:[EMAIL PROTECTED] http://milek.blogspot.com _______________________________________________ zfs-discuss mailing list zfs-discuss@opensolaris.org http://mail.opensolaris.org/mailman/listinfo/zfs-discuss