[ https://issues.apache.org/jira/browse/PROTON-2130?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17090260#comment-17090260 ]
ASF subversion and git services commented on PROTON-2130: --------------------------------------------------------- Commit 667f78c6d2ac17256ea67da54ff5703d424328f1 in qpid-proton's branch refs/heads/master from Cliff Jansen [ https://gitbox.apache.org/repos/asf?p=qpid-proton.git;h=667f78c ] PROTON-2130: epoll proactor changed to use serialized calls to epoll_wait for multiple events > Improve epoll_wait processing in epoll proactor > ----------------------------------------------- > > Key: PROTON-2130 > URL: https://issues.apache.org/jira/browse/PROTON-2130 > Project: Qpid Proton > Issue Type: Improvement > Components: proton-c > Affects Versions: proton-c-0.29.0 > Reporter: Clifford Jansen > Assignee: Clifford Jansen > Priority: Major > > Change epoll proactor to use epoll_wait() more efficiently and more > canonically. > Old way: each thread without work called epoll_wait() for 1 event. > New: when known work exhausted, only one thread calls epoll_wait for N events > and schedules work for the other threads to execute. > The downside to the old way is that for each event, all threads in > epoll_wait() are woken up but only one "wins" (obtaining the event to > process) while the rest go back to sleep. > In addition to wasteful use of cpu, this behavior also shows up in > performance monitoring tools and clutters the analysis of profiling data and > flame graphs. -- This message was sent by Atlassian Jira (v8.3.4#803005) --------------------------------------------------------------------- To unsubscribe, e-mail: dev-unsubscr...@qpid.apache.org For additional commands, e-mail: dev-h...@qpid.apache.org