Dan Hecht has posted comments on this change.

Change subject: IMPALA-3115: Hoist some variables out of loops in 
cross-compiled code.
......................................................................


Patch Set 5:

(1 comment)

http://gerrit.cloudera.org:8080/#/c/2661/5/be/src/runtime/row-batch.h
File be/src/runtime/row-batch.h:

Line 172:       ++row_idx_;
we still have two loop iterators.  What I was thinking was that you'd store the 
end pointer instead:

row_end_ = row_ + num_tuples_per_row_ * num_rows;

and then Next() only does one addition and then AtEnd() would be a pointer 
comparison.  If you need row_idx() you can always recover it from pointer 
arithmetic. 

But that way Next() is cheaper and the loop is hopefully structured in a more 
canonical way (one iterator) for the compiler to do more optimization.


-- 
To view, visit http://gerrit.cloudera.org:8080/2661
To unsubscribe, visit http://gerrit.cloudera.org:8080/settings

Gerrit-MessageType: comment
Gerrit-Change-Id: Ic7152b1fb094b3c3574d203e3774f4297f2225dc
Gerrit-PatchSet: 5
Gerrit-Project: Impala
Gerrit-Branch: cdh5-trunk
Gerrit-Owner: Michael Ho <[email protected]>
Gerrit-Reviewer: Dan Hecht <[email protected]>
Gerrit-Reviewer: Michael Ho <[email protected]>
Gerrit-Reviewer: Tim Armstrong <[email protected]>
Gerrit-HasComments: Yes

Reply via email to