[ 
https://issues.apache.org/jira/browse/PROTON-2130?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17090267#comment-17090267
 ] 

ASF subversion and git services commented on PROTON-2130:
---------------------------------------------------------

Commit 9e1990b1345f9917648659399f198e74fba7d5d7 in qpid-proton's branch 
refs/heads/master from Andrew Stitcher
[ https://gitbox.apache.org/repos/asf?p=qpid-proton.git;h=9e1990b ]

PROTON-2130: epoll reworking:
- Only keep fd in epoll_extended_t remove from ptimer_t, psocket_t
- Remove backpointers and consistently use structure embedding to go from:
  psocket->pconnection;
  psocket->pn_listener;
  psocket->acceptor;
  pcontext->pconnection;
  pcontext->pn_listener;
  pn_event_batch->pn_proactor;
  pn_batch_event->pn_listener;
  pn_batch_event->pconnection;
- Move address string from being stored in psocket to being stored in 
pconnection and
  pn_listener - saves strings for multiple listening sockets
- Rationalise post_event by switching on event types instead of the previous ad 
hoc
  event type detection.


> 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

Reply via email to