Todd Lipcon has posted comments on this change. ( http://gerrit.cloudera.org:8080/13721 )
Change subject: KUDU-2847: Optimize iteration over selection vector in SerializeRowBlock ...................................................................... Patch Set 2: I played a bit with this patch and made a few changes shown here: https://gist.github.com/e00c7f8e8360cd663d2ab1ac48959c9b this changes the benchmark to run a constant number of cells and output cycles/cell. It also makes a few optimizations to speed up the conversion of bitmaps to vector of indices, similar to what I suggested above. original: I0716 00:05:15.684546 18747 wire_protocol-test.cc:172] Converting to PB with column count 3 and row select rate 1: 5.12520529 cycles/cell I0716 00:05:16.123811 18747 wire_protocol-test.cc:172] Converting to PB with column count 3 and row select rate 0.8: 12.74473127 cycles/cell I0716 00:05:16.950168 18747 wire_protocol-test.cc:172] Converting to PB with column count 3 and row select rate 0.5: 23.98607461 cycles/cell I0716 00:05:18.350739 18747 wire_protocol-test.cc:172] Converting to PB with column count 3 and row select rate 0.2: 40.66053179 cycles/cell I0716 00:05:18.883632 18747 wire_protocol-test.cc:172] Converting to PB with column count 30 and row select rate 1: 15.43040511 cycles/cell I0716 00:05:19.702869 18747 wire_protocol-test.cc:172] Converting to PB with column count 30 and row select rate 0.8: 23.7480557 cycles/cell I0716 00:05:21.084743 18747 wire_protocol-test.cc:172] Converting to PB with column count 30 and row select rate 0.5: 40.08323337 cycles/cell I0716 00:05:22.760478 18747 wire_protocol-test.cc:172] Converting to PB with column count 30 and row select rate 0.2: 48.62210244 cycles/cell I0716 00:05:23.425213 18747 wire_protocol-test.cc:172] Converting to PB with column count 300 and row select rate 1: 18.9223316 cycles/cell I0716 00:05:24.384176 18747 wire_protocol-test.cc:172] Converting to PB with column count 300 and row select rate 0.8: 27.50793008 cycles/cell I0716 00:05:25.785208 18747 wire_protocol-test.cc:172] Converting to PB with column count 300 and row select rate 0.5: 40.34367716 cycles/cell I0716 00:05:27.613420 18747 wire_protocol-test.cc:172] Converting to PB with column count 300 and row select rate 0.2: 52.7446843 cycles/cell zhangyao's version: I0716 00:05:43.160219 19261 wire_protocol-test.cc:172] Converting to PB with column count 3 and row select rate 1: 5.32750006 cycles/cell I0716 00:05:43.544219 19261 wire_protocol-test.cc:172] Converting to PB with column count 3 and row select rate 0.8: 11.13753333 cycles/cell I0716 00:05:44.195641 19261 wire_protocol-test.cc:172] Converting to PB with column count 3 and row select rate 0.5: 18.90386941 cycles/cell I0716 00:05:45.187793 19261 wire_protocol-test.cc:172] Converting to PB with column count 3 and row select rate 0.2: 28.7992143 cycles/cell I0716 00:05:45.713094 19261 wire_protocol-test.cc:172] Converting to PB with column count 30 and row select rate 1: 15.20973827 cycles/cell I0716 00:05:46.259582 19261 wire_protocol-test.cc:172] Converting to PB with column count 30 and row select rate 0.8: 15.82916978 cycles/cell I0716 00:05:46.809581 19261 wire_protocol-test.cc:172] Converting to PB with column count 30 and row select rate 0.5: 15.92793484 cycles/cell I0716 00:05:47.421159 19261 wire_protocol-test.cc:172] Converting to PB with column count 30 and row select rate 0.2: 17.71918057 cycles/cell I0716 00:05:48.091591 19261 wire_protocol-test.cc:172] Converting to PB with column count 300 and row select rate 1: 19.09610579 cycles/cell I0716 00:05:48.761175 19261 wire_protocol-test.cc:172] Converting to PB with column count 300 and row select rate 0.8: 18.89817833 cycles/cell I0716 00:05:49.393072 19261 wire_protocol-test.cc:172] Converting to PB with column count 300 and row select rate 0.5: 18.01899173 cycles/cell I0716 00:05:50.126744 19261 wire_protocol-test.cc:172] Converting to PB with column count 300 and row select rate 0.2: 20.69221174 cycles/cell with my changes: I0716 00:04:49.736728 18599 wire_protocol-test.cc:172] Converting to PB with column count 3 and row select rate 1: 6.15231488 cycles/cell I0716 00:04:50.063104 18599 wire_protocol-test.cc:172] Converting to PB with column count 3 and row select rate 0.8: 9.46510837 cycles/cell I0716 00:04:50.354218 18599 wire_protocol-test.cc:172] Converting to PB with column count 3 and row select rate 0.5: 8.44479528 cycles/cell I0716 00:04:50.666503 18599 wire_protocol-test.cc:172] Converting to PB with column count 3 and row select rate 0.2: 9.05289943 cycles/cell I0716 00:04:51.228058 18599 wire_protocol-test.cc:172] Converting to PB with column count 30 and row select rate 1: 16.26476494 cycles/cell I0716 00:04:51.763269 18599 wire_protocol-test.cc:172] Converting to PB with column count 30 and row select rate 0.8: 15.49973305 cycles/cell I0716 00:04:52.277858 18599 wire_protocol-test.cc:172] Converting to PB with column count 30 and row select rate 0.5: 14.89959128 cycles/cell I0716 00:04:52.803534 18599 wire_protocol-test.cc:172] Converting to PB with column count 30 and row select rate 0.2: 15.22482627 cycles/cell I0716 00:04:53.483842 18599 wire_protocol-test.cc:172] Converting to PB with column count 300 and row select rate 1: 19.39585408 cycles/cell I0716 00:04:54.123446 18599 wire_protocol-test.cc:172] Converting to PB with column count 300 and row select rate 0.8: 18.24819305 cycles/cell I0716 00:04:54.757288 18599 wire_protocol-test.cc:172] Converting to PB with column count 300 and row select rate 0.5: 18.06256705 cycles/cell I0716 00:04:55.405241 18599 wire_protocol-test.cc:172] Converting to PB with column count 300 and row select rate 0.2: 18.25103313 cycles/cell -- To view, visit http://gerrit.cloudera.org:8080/13721 To unsubscribe, visit http://gerrit.cloudera.org:8080/settings Gerrit-Project: kudu Gerrit-Branch: master Gerrit-MessageType: comment Gerrit-Change-Id: I19917d1875c46fd4cf98ef8a471b0340a76161e7 Gerrit-Change-Number: 13721 Gerrit-PatchSet: 2 Gerrit-Owner: ZhangYao <[email protected]> Gerrit-Reviewer: Kudu Jenkins (120) Gerrit-Reviewer: Todd Lipcon <[email protected]> Gerrit-Reviewer: Yao Xu <[email protected]> Gerrit-Reviewer: ZhangYao <[email protected]> Gerrit-Comment-Date: Tue, 16 Jul 2019 07:10:44 +0000 Gerrit-HasComments: No
