You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@qpid.apache.org by "Ken Giusti (Jira)" <ji...@apache.org> on 2021/09/21 15:05:00 UTC
[jira] [Created] (DISPATCH-2251) optimize
qd_compose_insert_string_iterator
Ken Giusti created DISPATCH-2251:
------------------------------------
Summary: optimize qd_compose_insert_string_iterator
Key: DISPATCH-2251
URL: https://issues.apache.org/jira/browse/DISPATCH-2251
Project: Qpid Dispatch
Issue Type: Improvement
Components: Router Node
Affects Versions: 1.17.0
Reporter: Ken Giusti
Assignee: Ken Giusti
Fix For: 1.18.0
Attachments: qdr_perf_worker_134462_134462.svg, qdr_perf_worker_38506_38506.svg
Analysis of perf data for the receive path of a inter-router connection downstream router shows that qd_compose_insert_string_iterator calls are expensive. This is due to the way qd_compose_insert_string_iterator copies data from the iterator: byte by byte.
Refactoring qd_compose_insert_string_iterator to use qd_iterator_copy and qd_compose_insert_string_n will leverage memmove semantics and will improve performance (see attached flamegraphs: 134462 current vs 38506 w/optimization)
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@qpid.apache.org
For additional commands, e-mail: dev-help@qpid.apache.org