Impala Public Jenkins has submitted this change and it was merged. ( http://gerrit.cloudera.org:8080/15251 )
Change subject: IMPALA-9399: optimise RuntimeProfile::ToThrift() ...................................................................... IMPALA-9399: optimise RuntimeProfile::ToThrift() The big win here is to preallocate the vector<TRuntimeProfileNode> to the right size, to avoid copying the TRuntimeProfileNode objects when reallocating the vector. The JIRA description on IMPALA-9399 explains why this happens. Also various simplification/modernisation of code to avoid unnecessary copies of vectors and redundant lock acquisitions. Perf: Added a microbenchmark that shows a 2.75x speedup of RuntimeProfile::ToThrift() on a synthetic profile. Change-Id: I1f85ef005ae3b793515b223d4c04bbd898336065 Reviewed-on: http://gerrit.cloudera.org:8080/15251 Reviewed-by: Impala Public Jenkins <[email protected]> Tested-by: Impala Public Jenkins <[email protected]> --- M be/src/benchmarks/CMakeLists.txt A be/src/benchmarks/runtime-profile-benchmark.cc M be/src/util/runtime-profile.cc M be/src/util/runtime-profile.h 4 files changed, 192 insertions(+), 64 deletions(-) Approvals: Impala Public Jenkins: Looks good to me, approved; Verified -- To view, visit http://gerrit.cloudera.org:8080/15251 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: Impala-ASF Gerrit-Branch: master Gerrit-MessageType: merged Gerrit-Change-Id: I1f85ef005ae3b793515b223d4c04bbd898336065 Gerrit-Change-Number: 15251 Gerrit-PatchSet: 8 Gerrit-Owner: Tim Armstrong <[email protected]> Gerrit-Reviewer: Csaba Ringhofer <[email protected]> Gerrit-Reviewer: Impala Public Jenkins <[email protected]> Gerrit-Reviewer: Tim Armstrong <[email protected]>
