Uploaded image for project: 'Qpid Proton'
  1. Qpid Proton
  2. PROTON-1550

Epoll proactor performance improvement

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Closed
    • Major
    • Resolution: Not A Problem
    • None
    • proton-c-0.19.0
    • proton-c
    • Linux

    Description

      While stress testing and evaluating performance of the epoll proactor there have been indications that as the number of connections increase, the throughput increases more slowly than overall cpu use.

      Instrumenting and profiling suggest that, at least for applications like qpid-dispatch, there can be a large number of simultaneous pending pn_connection_wake() requests for thread-safe handoff of messages from one connection context to another.

      As the number of connections rise, the use of adaptive spin locks for this purpose is suspected to be an inefficient strategy, perhaps resulting in a lock convoy. A trial use of one or more lockless queues could yield substantial performance gain or at least better understanding of current hot spots.

      Attachments

        Activity

          People

            cliffjansen Clifford Jansen
            cliffjansen Clifford Jansen
            Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: