Chuck Rolke created DISPATCH-760:
------------------------------------
Summary: Inefficiencies handling message annotations
Key: DISPATCH-760
URL: https://issues.apache.org/jira/browse/DISPATCH-760
Project: Qpid Dispatch
Issue Type: Bug
Affects Versions: 0.8.0
Environment: Fedora 25 laptop
Single router, 8 worker threads, single receiver, single sender. Messages have
200 100-byte annotations.
Reporter: Chuck Rolke
The router as a whole spends a lot of time managing annotations. With routers
and other intermediaries adding and stripping annotations, improvements in this
area could be valuable.
Testing a stand-alone router gets these results.
||N 100-byte annotations || msg/S throughput||
| 0 | 30,000 |
| 1 | 22,500 |
| 2 | 20,500 |
| 5 | 15,500 |
| 10 | 10,000 |
| 20 | 5,500 |
| 50 | 2,400 |
| 100 | 1,200 |
| 200 | 500 |
Application 'perf' provides some visibility into where the threads are spending
their time. View the attached .svg files to see what the core thread and an
aggregation of the remaining threads are busy doing.
The worker threads are spending ~85% of their time composing messages while the
core thread is spending 90+% of its time deleting deliveries with a majority of
its time in qd_parse_free().
A 'top' thread snapshot shows several worker threads completely idle. The core
thread has tid=32631.
{noformat}
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
32633 chug 20 0 858376 137708 8484 R 26.7 0.9 0:33.99 qdrouterd
32632 chug 20 0 858376 137708 8484 S 20.0 0.9 0:34.63 qdrouterd
32631 chug 20 0 858376 137708 8484 S 13.3 0.9 0:30.13 qdrouterd
32635 chug 20 0 858376 137708 8484 R 13.3 0.9 0:34.26 qdrouterd
32636 chug 20 0 858376 137708 8484 S 13.3 0.9 0:34.80 qdrouterd
32638 chug 20 0 858376 137708 8484 S 13.3 0.9 0:34.34 qdrouterd
32616 chug 20 0 858376 137708 8484 S 6.7 0.9 0:35.48 qdrouterd
32634 chug 20 0 858376 137708 8484 S 6.7 0.9 0:34.09 qdrouterd
32637 chug 20 0 858376 137708 8484 S 6.7 0.9 0:34.42 qdrouterd
{noformat}
--
This message was sent by Atlassian JIRA
(v6.3.15#6346)
---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]