[
https://issues.apache.org/jira/browse/QPID-6255?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=14239568#comment-14239568
]
Ken Giusti commented on QPID-6255:
----------------------------------
Well, the performance numbers don't look so great. In general
qpid-cpp-benchmark shows about 1-2% degradation in rx and tx performance when
the event model is used.
I ran qpid-cpp-benchmark several times both with HAVE_PROTON_EVENTS defined and
undefined (use the old polling method). Using the best of N runs in each case
I observed the event variant performing a little worse than the original polled
approach. For example:
polled:
qpid-cpp-benchmark -s1 -r1 -m 1000000 --summarize
--connection-options="{protocol:amqp1.0}"
send-tp recv-tp l-min l-max l-avg total-tp
57592 54216 2.87 1196.82 631.21 54118
event:
qpid-cpp-benchmark -s1 -r1 -m 1000000 --summarize
--connection-options="{protocol:amqp1.0}"
send-tp recv-tp l-min l-max l-avg total-tp
56620 53157 2.56 1307.70 724.17 53065
send-tp = -1.688%
recv-tp = -1.953%
The cpu utilization appears to be roughly the same, but simply eyeballing 'top'
doesn't provide the granularity necessary to determine if the process is
running 1-2% less frequently. The only other conclusion I can draw is that the
event model results in 1-2% more work per message transfer. I'm going to run
this under callgrind to see if that sheds more light on this.
> [amqp1.0] Migrate to the new Proton event API
> ---------------------------------------------
>
> Key: QPID-6255
> URL: https://issues.apache.org/jira/browse/QPID-6255
> Project: Qpid
> Issue Type: Improvement
> Components: C++ Broker
> Affects Versions: 0.30
> Reporter: Ken Giusti
> Assignee: Ken Giusti
> Fix For: Future
>
>
> Proton version 0.8 introduced an event-based API. The Qpid broker currently
> uses the older API which requires a linear search of deliveries, links, and
> sessions during event processing. Migrating to the new API _should_ optimize
> event processing, especially as the number of object instances scale.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]