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/22 19:32:00 UTC

[jira] [Resolved] (DISPATCH-2251) optimize qd_compose_insert_string_iterator

     [ https://issues.apache.org/jira/browse/DISPATCH-2251?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ken Giusti resolved DISPATCH-2251.
----------------------------------
    Resolution: Fixed

> 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
>            Priority: Trivial
>             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