ksummit.lists.linux.dev archive mirror
 help / color / mirror / Atom feed
* [TECH TOPIC] io_uring: BPF controlled I/O
@ 2021-06-25 18:24 Pavel Begunkov
  2021-06-25 18:28 ` Pavel Begunkov
  0 siblings, 1 reply; 2+ messages in thread
From: Pavel Begunkov @ 2021-06-25 18:24 UTC (permalink / raw)
  To: ksummit

io_uring is an asynchronous I/O API crafted for efficiency, where one of
the reasons for using shared rings is to reduce context switching. It got
lots of of features since introduction, and pushing it further we want
to give away some of the control over submitting and controlling I/O to
BPF, minimising the number of context switches even more.

- It should keep the number of system calls to a minimum.
- Help to lower overhead on scheduling user processes to CPUs
  when they have not much to do and will go to sleep briefly.
- Be an alternative to submission queue polling for latency
  reduction not taking as much CPU time at the same moment.

We'll go over the current design [1] and decisions, issues and plans,
and hopefully it will engage a discussion and give impetus to curious
minds to try it out and share ideas on how to tailor the API to fit
their use cases.

[1] https://lore.kernel.org/io-uring/a83f147b-ea9d-e693-a2e9-c6ce16659749@gmail.com/T/#m31d0a2ac6e2213f912a200f5e8d88bd74f81406b

-- 
Pavel Begunkov

^ permalink raw reply	[flat|nested] 2+ messages in thread

* Re: [TECH TOPIC] io_uring: BPF controlled I/O
  2021-06-25 18:24 [TECH TOPIC] io_uring: BPF controlled I/O Pavel Begunkov
@ 2021-06-25 18:28 ` Pavel Begunkov
  0 siblings, 0 replies; 2+ messages in thread
From: Pavel Begunkov @ 2021-06-25 18:28 UTC (permalink / raw)
  To: ksummit

On 6/25/21 7:24 PM, Pavel Begunkov wrote:

Please ignore this:

My apologies, looks I screwed it and misread instructions.
Please
ignore this submission.

> io_uring is an asynchronous I/O API crafted for efficiency, where one of
> the reasons for using shared rings is to reduce context switching. It got
> lots of of features since introduction, and pushing it further we want
> to give away some of the control over submitting and controlling I/O to
> BPF, minimising the number of context switches even more.
> 
> - It should keep the number of system calls to a minimum.
> - Help to lower overhead on scheduling user processes to CPUs
>   when they have not much to do and will go to sleep briefly.
> - Be an alternative to submission queue polling for latency
>   reduction not taking as much CPU time at the same moment.
> 
> We'll go over the current design [1] and decisions, issues and plans,
> and hopefully it will engage a discussion and give impetus to curious
> minds to try it out and share ideas on how to tailor the API to fit
> their use cases.
> 
> [1] https://lore.kernel.org/io-uring/a83f147b-ea9d-e693-a2e9-c6ce16659749@gmail.com/T/#m31d0a2ac6e2213f912a200f5e8d88bd74f81406b
> 

-- 
Pavel Begunkov

^ permalink raw reply	[flat|nested] 2+ messages in thread

end of thread, other threads:[~2021-06-25 18:28 UTC | newest]

Thread overview: 2+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-06-25 18:24 [TECH TOPIC] io_uring: BPF controlled I/O Pavel Begunkov
2021-06-25 18:28 ` Pavel Begunkov

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).