On 15/07/2020 11:41, Miklos Szeredi wrote:
On Wed, Jul 15, 2020 at 10:33 AM Pavel Begunkov asml.silence@gmail.com wrote:
On 14/07/2020 14:55, Miklos Szeredi wrote:
On Tue, Jul 14, 2020 at 1:36 PM Pavel Begunkov asml.silence@gmail.com wrote:
On 14/07/2020 11:07, Miklos Szeredi wrote:
On Tue, Jul 14, 2020 at 8:51 AM Pavel Machek pavel@denx.de wrote:
Hi!
>> At first, I thought that the proposed system call is capable of >> reading *multiple* small files using a single system call - which >> would help increase HDD/SSD queue utilization and increase IOPS (I/O >> operations per second) - but that isn't the case and the proposed >> system call can read just a single file. > > If you want to do this for multple files, use io_ring, that's what it > was designed for. I think Jens was going to be adding support for the > open/read/close pattern to it as well, after some other more pressing > features/fixes were finished.
What about... just using io_uring for single file, too? I'm pretty sure it can be wrapped in a library that is simple to use, avoiding need for new syscall.
Just wondering: is there a plan to add strace support to io_uring? And I don't just mean the syscalls associated with io_uring, but tracing the ring itself.
What kind of support do you mean? io_uring is asynchronous in nature with all intrinsic tracing/debugging/etc. problems of such APIs. And there are a lot of handy trace points, are those not enough?
Though, this can be an interesting project to rethink how async APIs are worked with.
Yeah, it's an interesting problem. The uring has the same events, as far as I understand, that are recorded in a multithreaded strace output (syscall entry, syscall exit); nothing more is needed> I do think this needs to be integrated into strace(1), otherwise the usefulness of that tool (which I think is *very* high) would go down drastically as io_uring usage goes up.
Not touching the topic of usefulness of strace + io_uring, but I'd rather have a tool that solves a problem, than a problem that created and honed for a tool.
Sorry, I'm not getting the metaphor. Can you please elaborate?
Sure, I mean _if_ there are tools that conceptually suit better, I'd prefer to work with them, then trying to shove a new and possibly alien infrastructure into strace.
But my knowledge of strace is very limited, so can't tell whether that's the case. E.g. can it utilise static trace points?