Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 3 Sep 2022 06:26:27 +0300
From:      Konstantin Belousov <kostikbel@gmail.com>
To:        Rick Macklem <rmacklem@uoguelph.ca>
Cc:        FreeBSD Filesystems <freebsd-fs@freebsd.org>
Subject:   Re: RFC: multiple concurrent I/O ops for copy_file_range(2)
Message-ID:  <YxLJY47LWlEyk6gK@kib.kiev.ua>
In-Reply-To: <YQXPR01MB41506C61D9936C01072F6373DD7D9@YQXPR01MB4150.CANPRD01.PROD.OUTLOOK.COM>
References:  <YQXPR01MB41506C61D9936C01072F6373DD7D9@YQXPR01MB4150.CANPRD01.PROD.OUTLOOK.COM>

next in thread | previous in thread | raw e-mail | index | archive | help
On Sat, Sep 03, 2022 at 03:11:03AM +0000, Rick Macklem wrote:
> Hi,
> 
> A recent discussion involving copy_file_range(2) performance
> included a suggestion that, maybe, copying of subranges
> should be done concurrently.
> 
> Although I cannot be 100% sure, I think that this would
> involve using multiple kernel threads (taskqueue or similar)
> to issue I/O operations on the file system(s) for blocks
> (of f_iosize maybe?) concurrently, to improve performance.
> 
> Doing this in a system call is unusual, to say the least but, then,
> copy_file_range(2) is an unusual system call to begin with.
> 
> I have not attempted to code this up as of yet.
> 
> So, what do others think of this idea?
> 
Note that UFS does not understand more than one stream of writes to
single vnode.  The result could be a severe fragmentation, which is
relevant even for SSDs (due to large internal block size).



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?YxLJY47LWlEyk6gK>