[PATCH 1 of 4] Switched to using posted next events after sendfile_max_chunk

Maxim Dounin mdounin at mdounin.ru
Tue Oct 26 15:51:43 UTC 2021


Hello!

On Tue, Oct 26, 2021 at 05:06:08PM +0300, Sergey Kandaurov wrote:

> > On 11 Oct 2021, at 21:58, Maxim Dounin <mdounin at mdounin.ru> wrote:
> > 
> > # HG changeset patch
> > # User Maxim Dounin <mdounin at mdounin.ru>
> > # Date 1633978533 -10800
> > #      Mon Oct 11 21:55:33 2021 +0300
> > # Node ID d175cd09ac9d2bab7f7226eac3bfce196a296cc0
> > # Parent  ae7c767aa491fa55d3168dfc028a22f43ac8cf89
> > Switched to using posted next events after sendfile_max_chunk.
> > 
> > Previously, 1 millisecond delay was used instead.  In certain edge cases
> > this might result in noticeable performance degradation though, notably on
> > Linux with typical CONFIG_HZ=250 (so 1ms delay becomes 4ms),
> 
> Looks like the description will need to be adjusted
> after landing 9e7de0547f09 with CLOCK_MONOTONIC_COARSE removal,
> which is the one known to return the time at the last tick.

As far as I understand, epoll_wait() timeout resolution is limited 
to ticks (https://man7.org/linux/man-pages/man7/time.7.html), so 
even with CLOCK_MONOTONIC_COARSE removal this statement is 
correct.

(Actually, the initial idea was to remove CLOCK_MONOTONIC_COARSE 
to make sendfile_max_chunk faster with minimal changes, but this 
didn't work because of the timeout resolution in epoll_wait().  
I've submitted the patch to remove CLOCK_MONOTONIC_COARSE anyway 
though.)

-- 
Maxim Dounin
http://mdounin.ru/


More information about the nginx-devel mailing list