All of lore.kernel.org
 help / color / mirror / Atom feed
* [ANNOUNCEMENT] io_uring SQPOLL sharing changes
@ 2021-03-19 15:48 Pavel Begunkov
  2021-03-22  5:54 ` Xiaoguang Wang
  0 siblings, 1 reply; 6+ messages in thread
From: Pavel Begunkov @ 2021-03-19 15:48 UTC (permalink / raw)
  To: io-uring, Xiaoguang Wang, joseph qi, Hao Xu; +Cc: Jens Axboe

Hey,

You may have already noticed, but there will be a change how SQPOLL
is shared in 5.12. In particular, SQPOLL may be shared only by processes
belonging to the same thread group. If this condition is not fulfilled,
then it silently creates a new SQPOLL task.

Just FYI, but may also yield some discussion on the topic.

-- 
Pavel Begunkov

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

* Re: [ANNOUNCEMENT] io_uring SQPOLL sharing changes
  2021-03-19 15:48 [ANNOUNCEMENT] io_uring SQPOLL sharing changes Pavel Begunkov
@ 2021-03-22  5:54 ` Xiaoguang Wang
  2021-03-22 14:49   ` Jens Axboe
  0 siblings, 1 reply; 6+ messages in thread
From: Xiaoguang Wang @ 2021-03-22  5:54 UTC (permalink / raw)
  To: Pavel Begunkov, io-uring, joseph qi, Hao Xu; +Cc: Jens Axboe

hi Pavel,

> Hey,
> 
> You may have already noticed, but there will be a change how SQPOLL
> is shared in 5.12. In particular, SQPOLL may be shared only by processes
> belonging to the same thread group. If this condition is not fulfilled,
> then it silently creates a new SQPOLL task.
Thanks for your kindly reminder, currently we only share sqpoll thread
in threads belonging to one same process.

Regards,
Xiaoguang Wang

> 
> Just FYI, but may also yield some discussion on the topic.
> 

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

* Re: [ANNOUNCEMENT] io_uring SQPOLL sharing changes
  2021-03-22  5:54 ` Xiaoguang Wang
@ 2021-03-22 14:49   ` Jens Axboe
  2021-03-23  4:09     ` Joseph Qi
  0 siblings, 1 reply; 6+ messages in thread
From: Jens Axboe @ 2021-03-22 14:49 UTC (permalink / raw)
  To: Xiaoguang Wang, Pavel Begunkov, io-uring, joseph qi, Hao Xu

On 3/21/21 11:54 PM, Xiaoguang Wang wrote:
> hi Pavel,
> 
>> Hey,
>>
>> You may have already noticed, but there will be a change how SQPOLL
>> is shared in 5.12. In particular, SQPOLL may be shared only by processes
>> belonging to the same thread group. If this condition is not fulfilled,
>> then it silently creates a new SQPOLL task.
>
> Thanks for your kindly reminder, currently we only share sqpoll thread
> in threads belonging to one same process.

That's good to know, imho it is also the only thing that _really_ makes
sense to do.

Since we're on the topic, are you actively using the percpu thread setup
that you sent out patches for earlier? That could still work within
the new scheme of having io threads, but I'd be curious to know first
if you guys are actually using it.

-- 
Jens Axboe


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

* Re: [ANNOUNCEMENT] io_uring SQPOLL sharing changes
  2021-03-22 14:49   ` Jens Axboe
@ 2021-03-23  4:09     ` Joseph Qi
  2021-03-23 16:22       ` Jens Axboe
  0 siblings, 1 reply; 6+ messages in thread
From: Joseph Qi @ 2021-03-23  4:09 UTC (permalink / raw)
  To: Jens Axboe, Xiaoguang Wang, Pavel Begunkov, io-uring, Hao Xu



On 3/22/21 10:49 PM, Jens Axboe wrote:
> On 3/21/21 11:54 PM, Xiaoguang Wang wrote:
>> hi Pavel,
>>
>>> Hey,
>>>
>>> You may have already noticed, but there will be a change how SQPOLL
>>> is shared in 5.12. In particular, SQPOLL may be shared only by processes
>>> belonging to the same thread group. If this condition is not fulfilled,
>>> then it silently creates a new SQPOLL task.
>>
>> Thanks for your kindly reminder, currently we only share sqpoll thread
>> in threads belonging to one same process.
> 
> That's good to know, imho it is also the only thing that _really_ makes
> sense to do.
> 
> Since we're on the topic, are you actively using the percpu thread setup
> that you sent out patches for earlier? That could still work within
> the new scheme of having io threads, but I'd be curious to know first
> if you guys are actually using it.
> 

Yes, we've already used percpu sqthread feature in our production
environment, in which 16 application threads share the same sqthread,
and it gains ~20% rt improvement compared with libaio.

Thanks,
Joseph

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

* Re: [ANNOUNCEMENT] io_uring SQPOLL sharing changes
  2021-03-23  4:09     ` Joseph Qi
@ 2021-03-23 16:22       ` Jens Axboe
  2021-03-24  2:14         ` Joseph Qi
  0 siblings, 1 reply; 6+ messages in thread
From: Jens Axboe @ 2021-03-23 16:22 UTC (permalink / raw)
  To: Joseph Qi, Xiaoguang Wang, Pavel Begunkov, io-uring, Hao Xu

On 3/22/21 10:09 PM, Joseph Qi wrote:
> 
> 
> On 3/22/21 10:49 PM, Jens Axboe wrote:
>> On 3/21/21 11:54 PM, Xiaoguang Wang wrote:
>>> hi Pavel,
>>>
>>>> Hey,
>>>>
>>>> You may have already noticed, but there will be a change how SQPOLL
>>>> is shared in 5.12. In particular, SQPOLL may be shared only by processes
>>>> belonging to the same thread group. If this condition is not fulfilled,
>>>> then it silently creates a new SQPOLL task.
>>>
>>> Thanks for your kindly reminder, currently we only share sqpoll thread
>>> in threads belonging to one same process.
>>
>> That's good to know, imho it is also the only thing that _really_ makes
>> sense to do.
>>
>> Since we're on the topic, are you actively using the percpu thread setup
>> that you sent out patches for earlier? That could still work within
>> the new scheme of having io threads, but I'd be curious to know first
>> if you guys are actually using it.
>>
> 
> Yes, we've already used percpu sqthread feature in our production
> environment, in which 16 application threads share the same sqthread,
> and it gains ~20% rt improvement compared with libaio.

Great! Any chance I can get you to re-post the patches against the
current tree?

-- 
Jens Axboe


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

* Re: [ANNOUNCEMENT] io_uring SQPOLL sharing changes
  2021-03-23 16:22       ` Jens Axboe
@ 2021-03-24  2:14         ` Joseph Qi
  0 siblings, 0 replies; 6+ messages in thread
From: Joseph Qi @ 2021-03-24  2:14 UTC (permalink / raw)
  To: Jens Axboe, Joseph Qi, Xiaoguang Wang, Pavel Begunkov, io-uring, Hao Xu



On 3/24/21 12:22 AM, Jens Axboe wrote:
> On 3/22/21 10:09 PM, Joseph Qi wrote:
>>
>>
>> On 3/22/21 10:49 PM, Jens Axboe wrote:
>>> On 3/21/21 11:54 PM, Xiaoguang Wang wrote:
>>>> hi Pavel,
>>>>
>>>>> Hey,
>>>>>
>>>>> You may have already noticed, but there will be a change how SQPOLL
>>>>> is shared in 5.12. In particular, SQPOLL may be shared only by processes
>>>>> belonging to the same thread group. If this condition is not fulfilled,
>>>>> then it silently creates a new SQPOLL task.
>>>>
>>>> Thanks for your kindly reminder, currently we only share sqpoll thread
>>>> in threads belonging to one same process.
>>>
>>> That's good to know, imho it is also the only thing that _really_ makes
>>> sense to do.
>>>
>>> Since we're on the topic, are you actively using the percpu thread setup
>>> that you sent out patches for earlier? That could still work within
>>> the new scheme of having io threads, but I'd be curious to know first
>>> if you guys are actually using it.
>>>
>>
>> Yes, we've already used percpu sqthread feature in our production
>> environment, in which 16 application threads share the same sqthread,
>> and it gains ~20% rt improvement compared with libaio.
> 
> Great! Any chance I can get you to re-post the patches against the
> current tree?
> 
Yes, we'll do it later.

Thanks,
Joseph

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

end of thread, other threads:[~2021-03-24  2:15 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-03-19 15:48 [ANNOUNCEMENT] io_uring SQPOLL sharing changes Pavel Begunkov
2021-03-22  5:54 ` Xiaoguang Wang
2021-03-22 14:49   ` Jens Axboe
2021-03-23  4:09     ` Joseph Qi
2021-03-23 16:22       ` Jens Axboe
2021-03-24  2:14         ` Joseph Qi

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.