Skip to content

Conversation

@alamb
Copy link
Contributor

@alamb alamb commented Dec 12, 2025

Which issue does this PR close?

Rationale for this change

I am using this PR to test a new mask backed approach for filter pushdown:

What changes are included in this PR?

Are these changes tested?

Are there any user-facing changes?

@alamb
Copy link
Contributor Author

alamb commented Dec 12, 2025

run benchmarks

@alamb
Copy link
Contributor Author

alamb commented Dec 12, 2025

run benchmark clickbench_pushdown

@alamb-ghbot
Copy link

🤖 ./gh_compare_branch.sh gh_compare_branch.sh Running
Linux aal-dev 6.14.0-1018-gcp #19~24.04.1-Ubuntu SMP Wed Sep 24 23:23:09 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
Comparing alamb/test_row_selection (6727249) to 10c933c diff using: tpch_mem clickbench_partitioned clickbench_extended
Results will be posted here when complete

@alamb-ghbot
Copy link

🤖: Benchmark completed

Details

Comparing HEAD and alamb_test_row_selection
--------------------
Benchmark clickbench_extended.json
--------------------
┏━━━━━━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┓
┃ Query        ┃        HEAD ┃ alamb_test_row_selection ┃       Change ┃
┡━━━━━━━━━━━━━━╇━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━┩
│ QQuery 0     │  2693.16 ms │               2753.42 ms │    no change │
│ QQuery 1     │  1209.97 ms │               1311.80 ms │ 1.08x slower │
│ QQuery 2     │  2366.30 ms │               2502.95 ms │ 1.06x slower │
│ QQuery 3     │  1126.34 ms │               1175.24 ms │    no change │
│ QQuery 4     │  2300.26 ms │               2321.73 ms │    no change │
│ QQuery 5     │ 28723.05 ms │              28595.87 ms │    no change │
│ QQuery 6     │  4068.06 ms │               4015.04 ms │    no change │
│ QQuery 7     │  3711.54 ms │               3719.29 ms │    no change │
└──────────────┴─────────────┴──────────────────────────┴──────────────┘
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━┓
┃ Benchmark Summary                       ┃            ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━┩
│ Total Time (HEAD)                       │ 46198.67ms │
│ Total Time (alamb_test_row_selection)   │ 46395.34ms │
│ Average Time (HEAD)                     │  5774.83ms │
│ Average Time (alamb_test_row_selection) │  5799.42ms │
│ Queries Faster                          │          0 │
│ Queries Slower                          │          2 │
│ Queries with No Change                  │          6 │
│ Queries with Failure                    │          0 │
└─────────────────────────────────────────┴────────────┘
--------------------
Benchmark clickbench_partitioned.json
--------------------
┏━━━━━━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓
┃ Query        ┃        HEAD ┃ alamb_test_row_selection ┃        Change ┃
┡━━━━━━━━━━━━━━╇━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩
│ QQuery 0     │     2.24 ms │                  2.20 ms │     no change │
│ QQuery 1     │    49.62 ms │                 50.27 ms │     no change │
│ QQuery 2     │   132.63 ms │                131.24 ms │     no change │
│ QQuery 3     │   140.11 ms │                153.81 ms │  1.10x slower │
│ QQuery 4     │  1047.64 ms │               1098.43 ms │     no change │
│ QQuery 5     │  1544.76 ms │               1512.88 ms │     no change │
│ QQuery 6     │     2.10 ms │                  2.28 ms │  1.09x slower │
│ QQuery 7     │    61.06 ms │                 56.14 ms │ +1.09x faster │
│ QQuery 8     │  1428.35 ms │               1460.65 ms │     no change │
│ QQuery 9     │  1864.88 ms │               1867.65 ms │     no change │
│ QQuery 10    │   362.41 ms │                361.97 ms │     no change │
│ QQuery 11    │   416.75 ms │                407.96 ms │     no change │
│ QQuery 12    │  1349.20 ms │               1378.76 ms │     no change │
│ QQuery 13    │  1986.57 ms │               2008.16 ms │     no change │
│ QQuery 14    │  1249.60 ms │               1259.08 ms │     no change │
│ QQuery 15    │  1249.19 ms │               1286.66 ms │     no change │
│ QQuery 16    │  2638.14 ms │               2700.80 ms │     no change │
│ QQuery 17    │  2599.64 ms │               2706.71 ms │     no change │
│ QQuery 18    │  5812.51 ms │               5091.60 ms │ +1.14x faster │
│ QQuery 19    │   121.81 ms │                123.59 ms │     no change │
│ QQuery 20    │  1905.46 ms │               1891.27 ms │     no change │
│ QQuery 21    │  2234.24 ms │               2188.57 ms │     no change │
│ QQuery 22    │  6806.32 ms │               3747.39 ms │ +1.82x faster │
│ QQuery 23    │ 12703.47 ms │              12457.24 ms │     no change │
│ QQuery 24    │   218.21 ms │                208.08 ms │     no change │
│ QQuery 25    │   461.98 ms │                465.01 ms │     no change │
│ QQuery 26    │   216.96 ms │                210.46 ms │     no change │
│ QQuery 27    │  2802.74 ms │               2754.78 ms │     no change │
│ QQuery 28    │ 23615.45 ms │              24560.72 ms │     no change │
│ QQuery 29    │   964.86 ms │                955.22 ms │     no change │
│ QQuery 30    │  1301.41 ms │               1291.21 ms │     no change │
│ QQuery 31    │  1333.71 ms │               1333.72 ms │     no change │
│ QQuery 32    │  4956.28 ms │               5372.12 ms │  1.08x slower │
│ QQuery 33    │  5953.05 ms │               6037.57 ms │     no change │
│ QQuery 34    │  5931.14 ms │               6684.47 ms │  1.13x slower │
│ QQuery 35    │  1907.13 ms │               1911.67 ms │     no change │
│ QQuery 36    │   119.20 ms │                118.28 ms │     no change │
│ QQuery 37    │    54.70 ms │                 54.28 ms │     no change │
│ QQuery 38    │   118.99 ms │                119.76 ms │     no change │
│ QQuery 39    │   188.31 ms │                192.64 ms │     no change │
│ QQuery 40    │    45.15 ms │                 45.90 ms │     no change │
│ QQuery 41    │    42.71 ms │                 41.09 ms │     no change │
│ QQuery 42    │    33.69 ms │                 34.89 ms │     no change │
└──────────────┴─────────────┴──────────────────────────┴───────────────┘
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━┓
┃ Benchmark Summary                       ┃            ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━┩
│ Total Time (HEAD)                       │ 97974.37ms │
│ Total Time (alamb_test_row_selection)   │ 96337.19ms │
│ Average Time (HEAD)                     │  2278.47ms │
│ Average Time (alamb_test_row_selection) │  2240.40ms │
│ Queries Faster                          │          3 │
│ Queries Slower                          │          4 │
│ Queries with No Change                  │         36 │
│ Queries with Failure                    │          0 │
└─────────────────────────────────────────┴────────────┘
--------------------
Benchmark tpch_mem_sf1.json
--------------------
┏━━━━━━━━━━━━━━┳━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━┓
┃ Query        ┃      HEAD ┃ alamb_test_row_selection ┃       Change ┃
┡━━━━━━━━━━━━━━╇━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━┩
│ QQuery 1     │ 138.84 ms │                145.49 ms │    no change │
│ QQuery 2     │  28.97 ms │                 29.83 ms │    no change │
│ QQuery 3     │  38.79 ms │                 38.50 ms │    no change │
│ QQuery 4     │  28.43 ms │                 29.27 ms │    no change │
│ QQuery 5     │  87.90 ms │                 89.02 ms │    no change │
│ QQuery 6     │  19.80 ms │                 20.07 ms │    no change │
│ QQuery 7     │ 238.15 ms │                229.49 ms │    no change │
│ QQuery 8     │  38.51 ms │                 39.95 ms │    no change │
│ QQuery 9     │ 100.61 ms │                110.76 ms │ 1.10x slower │
│ QQuery 10    │  63.92 ms │                 64.23 ms │    no change │
│ QQuery 11    │  19.05 ms │                 18.40 ms │    no change │
│ QQuery 12    │  51.02 ms │                 51.63 ms │    no change │
│ QQuery 13    │  48.86 ms │                 47.66 ms │    no change │
│ QQuery 14    │  14.05 ms │                 14.38 ms │    no change │
│ QQuery 15    │  24.52 ms │                 25.36 ms │    no change │
│ QQuery 16    │  25.62 ms │                 25.77 ms │    no change │
│ QQuery 17    │ 157.35 ms │                156.63 ms │    no change │
│ QQuery 18    │ 287.13 ms │                281.29 ms │    no change │
│ QQuery 19    │  38.84 ms │                 38.90 ms │    no change │
│ QQuery 20    │  50.20 ms │                 51.50 ms │    no change │
│ QQuery 21    │ 322.61 ms │                348.34 ms │ 1.08x slower │
│ QQuery 22    │  17.63 ms │                 18.63 ms │ 1.06x slower │
└──────────────┴───────────┴──────────────────────────┴──────────────┘
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━┓
┃ Benchmark Summary                       ┃           ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━┩
│ Total Time (HEAD)                       │ 1840.81ms │
│ Total Time (alamb_test_row_selection)   │ 1875.10ms │
│ Average Time (HEAD)                     │   83.67ms │
│ Average Time (alamb_test_row_selection) │   85.23ms │
│ Queries Faster                          │         0 │
│ Queries Slower                          │         3 │
│ Queries with No Change                  │        19 │
│ Queries with Failure                    │         0 │
└─────────────────────────────────────────┴───────────┘

@alamb-ghbot
Copy link

🤖 ./gh_compare_branch.sh gh_compare_branch.sh Running
Linux aal-dev 6.14.0-1018-gcp #19~24.04.1-Ubuntu SMP Wed Sep 24 23:23:09 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux
Comparing alamb/test_row_selection (6727249) to 10c933c diff using: clickbench_pushdown
Results will be posted here when complete

@alamb-ghbot
Copy link

🤖: Benchmark completed

Details

Comparing HEAD and alamb_test_row_selection
--------------------
Benchmark clickbench_pushdown.json
--------------------
┏━━━━━━━━━━━━━━┳━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━━━━┓
┃ Query        ┃        HEAD ┃ alamb_test_row_selection ┃        Change ┃
┡━━━━━━━━━━━━━━╇━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━━━━┩
│ QQuery 0     │     2.61 ms │                  2.24 ms │ +1.17x faster │
│ QQuery 1     │    54.28 ms │                 53.60 ms │     no change │
│ QQuery 2     │   134.54 ms │                136.13 ms │     no change │
│ QQuery 3     │   150.96 ms │                155.83 ms │     no change │
│ QQuery 4     │  1191.34 ms │               1133.21 ms │     no change │
│ QQuery 5     │  1548.13 ms │               1503.90 ms │     no change │
│ QQuery 6     │     2.16 ms │                  2.26 ms │     no change │
│ QQuery 7     │    67.13 ms │                 69.50 ms │     no change │
│ QQuery 8     │  1478.14 ms │               1491.11 ms │     no change │
│ QQuery 9     │  1896.37 ms │               1926.53 ms │     no change │
│ QQuery 10    │   496.81 ms │                494.51 ms │     no change │
│ QQuery 11    │   544.04 ms │                538.04 ms │     no change │
│ QQuery 12    │  1591.87 ms │               1607.51 ms │     no change │
│ QQuery 13    │  2240.19 ms │               2268.13 ms │     no change │
│ QQuery 14    │  1494.44 ms │               1511.15 ms │     no change │
│ QQuery 15    │  1334.02 ms │               1303.33 ms │     no change │
│ QQuery 16    │  2674.46 ms │               2706.47 ms │     no change │
│ QQuery 17    │  2658.59 ms │               2717.23 ms │     no change │
│ QQuery 18    │  5266.27 ms │               4993.49 ms │ +1.05x faster │
│ QQuery 19    │   140.42 ms │                140.58 ms │     no change │
│ QQuery 20    │  1895.23 ms │               1849.76 ms │     no change │
│ QQuery 21    │  2328.47 ms │               2323.94 ms │     no change │
│ QQuery 22    │  3975.66 ms │               3967.08 ms │     no change │
│ QQuery 23    │  1122.75 ms │               1085.53 ms │     no change │
│ QQuery 24    │   245.52 ms │                251.98 ms │     no change │
│ QQuery 25    │   611.52 ms │                642.07 ms │     no change │
│ QQuery 26    │   342.49 ms │                347.35 ms │     no change │
│ QQuery 27    │  3003.94 ms │               3033.72 ms │     no change │
│ QQuery 28    │ 24270.22 ms │              24889.08 ms │     no change │
│ QQuery 29    │   975.17 ms │                953.36 ms │     no change │
│ QQuery 30    │  1366.44 ms │               1379.48 ms │     no change │
│ QQuery 31    │  1364.50 ms │               1388.17 ms │     no change │
│ QQuery 32    │  4868.03 ms │               4510.39 ms │ +1.08x faster │
│ QQuery 33    │  5823.70 ms │               5633.99 ms │     no change │
│ QQuery 34    │  5929.33 ms │               6135.16 ms │     no change │
│ QQuery 35    │  1969.93 ms │               1969.45 ms │     no change │
│ QQuery 36    │    30.20 ms │                 29.56 ms │     no change │
│ QQuery 37    │    29.21 ms │                 28.87 ms │     no change │
│ QQuery 38    │    28.69 ms │                 27.13 ms │ +1.06x faster │
│ QQuery 39    │    26.86 ms │                 28.09 ms │     no change │
│ QQuery 40    │    32.38 ms │                 30.63 ms │ +1.06x faster │
│ QQuery 41    │    28.90 ms │                 28.27 ms │     no change │
│ QQuery 42    │    27.61 ms │                 28.15 ms │     no change │
└──────────────┴─────────────┴──────────────────────────┴───────────────┘
┏━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━┳━━━━━━━━━━━━┓
┃ Benchmark Summary                       ┃            ┃
┡━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━╇━━━━━━━━━━━━┩
│ Total Time (HEAD)                       │ 85263.54ms │
│ Total Time (alamb_test_row_selection)   │ 85315.97ms │
│ Average Time (HEAD)                     │  1982.87ms │
│ Average Time (alamb_test_row_selection) │  1984.09ms │
│ Queries Faster                          │          5 │
│ Queries Slower                          │          0 │
│ Queries with No Change                  │         38 │
│ Queries with Failure                    │          0 │
└─────────────────────────────────────────┴────────────┘

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants