On Wed, Jan 21, 2015 at 3:50 AM, Paolo Bonzini <pbonzini@xxxxxxxxxx> wrote: > > > On 21/01/2015 12:14, Fam Zheng wrote: >> > My take for simplicity will be leaving epoll_ctl as-is, and my take for >> > performance will be epoll_pwait1. And I don't really like putting my time on >> > epoll_ctl_batch, thinking it as a ambivalent compromise in between. >> >> > I agree with Michael actually. The big change is going from O(n) >> > epoll_ctl calls to O(1), and epoll_ctl_batch achieves that just fine. >> > Changing 2 syscalls to 1 is the icing on the cake, but we're talking of >> > a fraction of a microsecond. >> >> Maybe I'm missing something, but in common cases, the set of fds for epoll_wait >> doesn't change that radically from one iteration to another, does it? > > That depends on the application. In my application, the set of fds almost never changes, but the set of events I want changes all the time. The main thing that changes is whether I care about EPOLLOUT. If I'm ready to send something, then I want EPOLLOUT. If I'm not ready, then I don't want EPOLLOUT. --Andy -- To unsubscribe from this list: send the line "unsubscribe linux-api" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html