You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@impala.apache.org by "Jim Apple (Code Review)" <ge...@cloudera.org> on 2016/05/01 23:24:19 UTC

[Impala-CR] IMPALA-3375: Improve TopN performance with a trivial Compare object.

Jim Apple has uploaded a new change for review.

  http://gerrit.cloudera.org:8080/2918

Change subject: IMPALA-3375: Improve TopN performance with a trivial Compare object.
......................................................................

IMPALA-3375: Improve TopN performance with a trivial Compare object.

The libstdc++ STL implementation, which is used by g++, copies Compare
objects frequently, which is expensive for objects like
TupleRowComparator. This patch creates a wrapper type this is trivial to copy.

It speeds up primitive_topn_bigint by 39% locally with scale factor 13
and 31% on the 16-node with scale factor 300. It speeds up
primitive_top-n_all by 13% locally and 7% on the 16-node.

Change-Id: I24755227b5bbbca6ad7c7d31d9bb8e132ca89e11
---
M be/src/exec/topn-node.cc
M be/src/exec/topn-node.h
M be/src/runtime/sorted-run-merger.cc
M be/src/runtime/sorter.cc
M be/src/service/impala-server-callbacks.cc
M be/src/service/impala-server.cc
M be/src/service/impala-server.h
M be/src/util/tuple-row-compare.h
8 files changed, 47 insertions(+), 23 deletions(-)


  git pull ssh://gerrit.cloudera.org:29418/Impala refs/changes/18/2918/1
-- 
To view, visit http://gerrit.cloudera.org:8080/2918
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: newchange
Gerrit-Change-Id: I24755227b5bbbca6ad7c7d31d9bb8e132ca89e11
Gerrit-PatchSet: 1
Gerrit-Project: Impala
Gerrit-Branch: master
Gerrit-Owner: Jim Apple <jb...@cloudera.com>