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

Tim Armstrong resolved IMPALA-9382.
-----------------------------------
    Fix Version/s: Impala 4.0
       Resolution: Fixed

> Prototype denser runtime profile implementation
> -----------------------------------------------
>
>                 Key: IMPALA-9382
>                 URL: https://issues.apache.org/jira/browse/IMPALA-9382
>             Project: IMPALA
>          Issue Type: Sub-task
>          Components: Backend
>            Reporter: Tim Armstrong
>            Assignee: Tim Armstrong
>            Priority: Major
>             Fix For: Impala 4.0
>
>         Attachments: profile_504b379400cba9f2_2d2cf00700000000, 
> tpcds_q10_profile_v1.txt, tpcds_q10_profile_v2.txt, tpcds_q10_profile_v2.txt
>
>
> RuntimeProfile trees can potentially stress the memory allocator and use up a 
> lot more memory and cache than is really necessary:
> * std::map is used throughout, and allocates a node per map entry. We do 
> depend on the counters being displayed in-order, but we would probably be 
> better of storing the counters in a vector and lazily sorting when needed 
> (since the set of counters is generally static after Prepare()).
> * We store the same counter names redundantly all over the place. We'd 
> probably be best off using a pool of constant counter names (we could just 
> require registering them upfront).
> There may be a small gain from switching thrift to using unordered_map, e.g. 
> for the info strings that appear with some frequency in profiles.
> However, I think we need to restructure the thrift representation and 
> in-memory representation to get significant gains.



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

---------------------------------------------------------------------
To unsubscribe, e-mail: issues-all-unsubscr...@impala.apache.org
For additional commands, e-mail: issues-all-h...@impala.apache.org

Reply via email to