datafusion icon indicating copy to clipboard operation
datafusion copied to clipboard

feat: Support `u32` indices for `HashJoinExec`

Open jonathanc-n opened this issue 8 months ago โ€ข 4 comments

Which issue does this PR close?

  • Closes #16179 .

Rationale for this change

We can use u32 indices instead of u64 indices when there are less than u32::MAX rows when building the hashmap. This acts as a memory optimization

What changes are included in this PR?

During HashJoinExec we construct the JoinLeftData with a Box<dyn JoinHashMapType> choosing between a u32 indice or u64 JoinHashMap.

I changed the JoinHashMapType to hold the update_from_iter, get_matched_indice, and get_matched_indices_with_limit_offset and split the JoinHashMap into JoinHashMapU32 and JoinHashMapU64.

I deliberately did not try to expose a generic in the trait, nor did I try to create a generic on the JoinHashMap struct as doing so would lead to many problems with having to call preceding functions with a generic; doing so is not possible since we are determining the JoinHashMapType during runtime.

Are these changes tested?

Yes I added a test for checking the hashmap created using u32 indices.

jonathanc-n avatar Jun 18 '25 01:06 jonathanc-n

cc @Dandandan

jonathanc-n avatar Jun 18 '25 01:06 jonathanc-n

๐Ÿค– ./gh_compare_branch.sh Benchmark Script Running Linux aal-dev 6.11.0-1015-gcp #15~24.04.1-Ubuntu SMP Thu Apr 24 20:41:05 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Comparing support-u32-hashmap (732fa2187396749b4abc40b034b4d60db396b403) to 056f5462bbc3de620f55e793343bc3a2276bd3d7 diff Benchmarks: tpch_mem clickbench_partitioned clickbench_extended Results will be posted here when complete

alamb avatar Jun 18 '25 21:06 alamb

๐Ÿค–: Benchmark completed

Details

Comparing HEAD and support-u32-hashmap
--------------------
Benchmark clickbench_extended.json
--------------------
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
โ”ƒ Query        โ”ƒ        HEAD โ”ƒ support-u32-hashmap โ”ƒ        Change โ”ƒ
โ”กโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ฉ
โ”‚ QQuery 0     โ”‚  1891.38 ms โ”‚          1886.58 ms โ”‚     no change โ”‚
โ”‚ QQuery 1     โ”‚   697.56 ms โ”‚           704.74 ms โ”‚     no change โ”‚
โ”‚ QQuery 2     โ”‚  1381.91 ms โ”‚          1361.41 ms โ”‚     no change โ”‚
โ”‚ QQuery 3     โ”‚   669.87 ms โ”‚           634.92 ms โ”‚ +1.06x faster โ”‚
โ”‚ QQuery 4     โ”‚  1327.15 ms โ”‚          1339.32 ms โ”‚     no change โ”‚
โ”‚ QQuery 5     โ”‚ 14912.55 ms โ”‚         14887.37 ms โ”‚     no change โ”‚
โ”‚ QQuery 6     โ”‚  2044.07 ms โ”‚          2059.57 ms โ”‚     no change โ”‚
โ”‚ QQuery 7     โ”‚  1784.47 ms โ”‚          1873.16 ms โ”‚     no change โ”‚
โ”‚ QQuery 8     โ”‚   797.99 ms โ”‚           802.46 ms โ”‚     no change โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
โ”ƒ Benchmark Summary                  โ”ƒ            โ”ƒ
โ”กโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ฉ
โ”‚ Total Time (HEAD)                  โ”‚ 25506.95ms โ”‚
โ”‚ Total Time (support-u32-hashmap)   โ”‚ 25549.53ms โ”‚
โ”‚ Average Time (HEAD)                โ”‚  2834.11ms โ”‚
โ”‚ Average Time (support-u32-hashmap) โ”‚  2838.84ms โ”‚
โ”‚ Queries Faster                     โ”‚          1 โ”‚
โ”‚ Queries Slower                     โ”‚          0 โ”‚
โ”‚ Queries with No Change             โ”‚          8 โ”‚
โ”‚ Queries with Failure               โ”‚          0 โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
--------------------
Benchmark clickbench_partitioned.json
--------------------
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
โ”ƒ Query        โ”ƒ        HEAD โ”ƒ support-u32-hashmap โ”ƒ       Change โ”ƒ
โ”กโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ฉ
โ”‚ QQuery 0     โ”‚    15.40 ms โ”‚            15.56 ms โ”‚    no change โ”‚
โ”‚ QQuery 1     โ”‚    33.85 ms โ”‚            33.67 ms โ”‚    no change โ”‚
โ”‚ QQuery 2     โ”‚    81.80 ms โ”‚            80.27 ms โ”‚    no change โ”‚
โ”‚ QQuery 3     โ”‚    94.51 ms โ”‚            98.91 ms โ”‚    no change โ”‚
โ”‚ QQuery 4     โ”‚   580.34 ms โ”‚           587.97 ms โ”‚    no change โ”‚
โ”‚ QQuery 5     โ”‚   818.51 ms โ”‚           852.27 ms โ”‚    no change โ”‚
โ”‚ QQuery 6     โ”‚    22.18 ms โ”‚            23.65 ms โ”‚ 1.07x slower โ”‚
โ”‚ QQuery 7     โ”‚    36.35 ms โ”‚            36.60 ms โ”‚    no change โ”‚
โ”‚ QQuery 8     โ”‚   840.07 ms โ”‚           846.70 ms โ”‚    no change โ”‚
โ”‚ QQuery 9     โ”‚  1163.06 ms โ”‚          1126.59 ms โ”‚    no change โ”‚
โ”‚ QQuery 10    โ”‚   256.44 ms โ”‚           253.13 ms โ”‚    no change โ”‚
โ”‚ QQuery 11    โ”‚   284.27 ms โ”‚           275.93 ms โ”‚    no change โ”‚
โ”‚ QQuery 12    โ”‚   855.55 ms โ”‚           892.86 ms โ”‚    no change โ”‚
โ”‚ QQuery 13    โ”‚  1240.05 ms โ”‚          1256.85 ms โ”‚    no change โ”‚
โ”‚ QQuery 14    โ”‚   788.52 ms โ”‚           799.55 ms โ”‚    no change โ”‚
โ”‚ QQuery 15    โ”‚   756.94 ms โ”‚           759.38 ms โ”‚    no change โ”‚
โ”‚ QQuery 16    โ”‚  1588.12 ms โ”‚          1573.61 ms โ”‚    no change โ”‚
โ”‚ QQuery 17    โ”‚  1596.56 ms โ”‚          1595.53 ms โ”‚    no change โ”‚
โ”‚ QQuery 18    โ”‚  2844.62 ms โ”‚          2904.45 ms โ”‚    no change โ”‚
โ”‚ QQuery 19    โ”‚    82.55 ms โ”‚            85.96 ms โ”‚    no change โ”‚
โ”‚ QQuery 20    โ”‚  1133.70 ms โ”‚          1187.01 ms โ”‚    no change โ”‚
โ”‚ QQuery 21    โ”‚  1273.35 ms โ”‚          1310.45 ms โ”‚    no change โ”‚
โ”‚ QQuery 22    โ”‚  2112.94 ms โ”‚          2171.74 ms โ”‚    no change โ”‚
โ”‚ QQuery 23    โ”‚  7356.55 ms โ”‚          7416.88 ms โ”‚    no change โ”‚
โ”‚ QQuery 24    โ”‚   427.69 ms โ”‚           444.19 ms โ”‚    no change โ”‚
โ”‚ QQuery 25    โ”‚   299.39 ms โ”‚           302.95 ms โ”‚    no change โ”‚
โ”‚ QQuery 26    โ”‚   433.22 ms โ”‚           449.51 ms โ”‚    no change โ”‚
โ”‚ QQuery 27    โ”‚  1555.11 ms โ”‚          1553.18 ms โ”‚    no change โ”‚
โ”‚ QQuery 28    โ”‚ 11668.95 ms โ”‚         11887.97 ms โ”‚    no change โ”‚
โ”‚ QQuery 29    โ”‚   519.95 ms โ”‚           508.95 ms โ”‚    no change โ”‚
โ”‚ QQuery 30    โ”‚   768.44 ms โ”‚           778.51 ms โ”‚    no change โ”‚
โ”‚ QQuery 31    โ”‚   799.04 ms โ”‚           818.27 ms โ”‚    no change โ”‚
โ”‚ QQuery 32    โ”‚  2409.37 ms โ”‚          2374.14 ms โ”‚    no change โ”‚
โ”‚ QQuery 33    โ”‚  3138.93 ms โ”‚          3153.14 ms โ”‚    no change โ”‚
โ”‚ QQuery 34    โ”‚  3162.98 ms โ”‚          3160.19 ms โ”‚    no change โ”‚
โ”‚ QQuery 35    โ”‚  1212.81 ms โ”‚          1231.29 ms โ”‚    no change โ”‚
โ”‚ QQuery 36    โ”‚   123.25 ms โ”‚           125.52 ms โ”‚    no change โ”‚
โ”‚ QQuery 37    โ”‚    57.19 ms โ”‚            57.98 ms โ”‚    no change โ”‚
โ”‚ QQuery 38    โ”‚   127.02 ms โ”‚           124.89 ms โ”‚    no change โ”‚
โ”‚ QQuery 39    โ”‚   195.28 ms โ”‚           197.94 ms โ”‚    no change โ”‚
โ”‚ QQuery 40    โ”‚    47.18 ms โ”‚            48.68 ms โ”‚    no change โ”‚
โ”‚ QQuery 41    โ”‚    45.15 ms โ”‚            42.97 ms โ”‚    no change โ”‚
โ”‚ QQuery 42    โ”‚    38.79 ms โ”‚            39.72 ms โ”‚    no change โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
โ”ƒ Benchmark Summary                  โ”ƒ            โ”ƒ
โ”กโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ฉ
โ”‚ Total Time (HEAD)                  โ”‚ 52886.01ms โ”‚
โ”‚ Total Time (support-u32-hashmap)   โ”‚ 53485.49ms โ”‚
โ”‚ Average Time (HEAD)                โ”‚  1229.91ms โ”‚
โ”‚ Average Time (support-u32-hashmap) โ”‚  1243.85ms โ”‚
โ”‚ Queries Faster                     โ”‚          0 โ”‚
โ”‚ Queries Slower                     โ”‚          1 โ”‚
โ”‚ Queries with No Change             โ”‚         42 โ”‚
โ”‚ Queries with Failure               โ”‚          0 โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
--------------------
Benchmark tpch_mem_sf1.json
--------------------
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
โ”ƒ Query        โ”ƒ      HEAD โ”ƒ support-u32-hashmap โ”ƒ    Change โ”ƒ
โ”กโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ฉ
โ”‚ QQuery 1     โ”‚ 100.68 ms โ”‚            99.40 ms โ”‚ no change โ”‚
โ”‚ QQuery 2     โ”‚  21.39 ms โ”‚            21.69 ms โ”‚ no change โ”‚
โ”‚ QQuery 3     โ”‚  32.64 ms โ”‚            32.28 ms โ”‚ no change โ”‚
โ”‚ QQuery 4     โ”‚  18.13 ms โ”‚            18.58 ms โ”‚ no change โ”‚
โ”‚ QQuery 5     โ”‚  48.89 ms โ”‚            49.42 ms โ”‚ no change โ”‚
โ”‚ QQuery 6     โ”‚  11.87 ms โ”‚            11.86 ms โ”‚ no change โ”‚
โ”‚ QQuery 7     โ”‚  87.37 ms โ”‚            83.45 ms โ”‚ no change โ”‚
โ”‚ QQuery 8     โ”‚  23.84 ms โ”‚            23.90 ms โ”‚ no change โ”‚
โ”‚ QQuery 9     โ”‚  53.64 ms โ”‚            53.53 ms โ”‚ no change โ”‚
โ”‚ QQuery 10    โ”‚  42.80 ms โ”‚            42.86 ms โ”‚ no change โ”‚
โ”‚ QQuery 11    โ”‚  11.21 ms โ”‚            11.22 ms โ”‚ no change โ”‚
โ”‚ QQuery 12    โ”‚  34.76 ms โ”‚            34.72 ms โ”‚ no change โ”‚
โ”‚ QQuery 13    โ”‚  26.15 ms โ”‚            26.24 ms โ”‚ no change โ”‚
โ”‚ QQuery 14    โ”‚   9.82 ms โ”‚             9.88 ms โ”‚ no change โ”‚
โ”‚ QQuery 15    โ”‚  19.41 ms โ”‚            19.59 ms โ”‚ no change โ”‚
โ”‚ QQuery 16    โ”‚  18.81 ms โ”‚            18.85 ms โ”‚ no change โ”‚
โ”‚ QQuery 17    โ”‚  96.08 ms โ”‚            94.52 ms โ”‚ no change โ”‚
โ”‚ QQuery 18    โ”‚ 193.90 ms โ”‚           189.03 ms โ”‚ no change โ”‚
โ”‚ QQuery 19    โ”‚  25.54 ms โ”‚            25.12 ms โ”‚ no change โ”‚
โ”‚ QQuery 20    โ”‚  33.31 ms โ”‚            31.69 ms โ”‚ no change โ”‚
โ”‚ QQuery 21    โ”‚ 148.25 ms โ”‚           146.30 ms โ”‚ no change โ”‚
โ”‚ QQuery 22    โ”‚  15.18 ms โ”‚            15.31 ms โ”‚ no change โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
โ”ƒ Benchmark Summary                  โ”ƒ           โ”ƒ
โ”กโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ฉ
โ”‚ Total Time (HEAD)                  โ”‚ 1073.66ms โ”‚
โ”‚ Total Time (support-u32-hashmap)   โ”‚ 1059.45ms โ”‚
โ”‚ Average Time (HEAD)                โ”‚   48.80ms โ”‚
โ”‚ Average Time (support-u32-hashmap) โ”‚   48.16ms โ”‚
โ”‚ Queries Faster                     โ”‚         0 โ”‚
โ”‚ Queries Slower                     โ”‚         0 โ”‚
โ”‚ Queries with No Change             โ”‚        22 โ”‚
โ”‚ Queries with Failure               โ”‚         0 โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

alamb avatar Jun 18 '25 22:06 alamb

Those benchmarks make sense, just saves memory.

jonathanc-n avatar Jun 18 '25 22:06 jonathanc-n

@Dandandan Would you be able to take a look? thanks!

jonathanc-n avatar Jun 29 '25 11:06 jonathanc-n

@Dandandan I can see if I can run some benchmarks.

@alamb this should be good to go, i'll see if I can implement some much needed hash join spilling after this gets merged ๐Ÿš€

jonathanc-n avatar Jul 07 '25 12:07 jonathanc-n

๐Ÿค– ./gh_compare_branch.sh Benchmark Script Running Linux aal-dev 6.11.0-1016-gcp #16~24.04.1-Ubuntu SMP Wed May 28 02:40:52 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Comparing support-u32-hashmap (6c1543d549bdd90603b91e8c4644b5545b8fe44e) to ebb8e9591322ee0a6fbc42cd43ce60f0e20981ba diff using: tpch_mem clickbench_partitioned clickbench_extended Results will be posted here when complete

alamb avatar Jul 08 '25 14:07 alamb

๐Ÿค–: Benchmark completed

Details

Comparing HEAD and support-u32-hashmap
--------------------
Benchmark clickbench_extended.json
--------------------
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
โ”ƒ Query        โ”ƒ        HEAD โ”ƒ support-u32-hashmap โ”ƒ        Change โ”ƒ
โ”กโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ฉ
โ”‚ QQuery 0     โ”‚  2104.73 ms โ”‚          1846.85 ms โ”‚ +1.14x faster โ”‚
โ”‚ QQuery 1     โ”‚   694.10 ms โ”‚           813.41 ms โ”‚  1.17x slower โ”‚
โ”‚ QQuery 2     โ”‚  1312.83 ms โ”‚          1507.45 ms โ”‚  1.15x slower โ”‚
โ”‚ QQuery 3     โ”‚   691.45 ms โ”‚           678.94 ms โ”‚     no change โ”‚
โ”‚ QQuery 4     โ”‚  1373.17 ms โ”‚          1348.65 ms โ”‚     no change โ”‚
โ”‚ QQuery 5     โ”‚ 15124.71 ms โ”‚         15473.54 ms โ”‚     no change โ”‚
โ”‚ QQuery 6     โ”‚  2047.34 ms โ”‚          2060.53 ms โ”‚     no change โ”‚
โ”‚ QQuery 7     โ”‚  1873.73 ms โ”‚          1838.61 ms โ”‚     no change โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
โ”ƒ Benchmark Summary                  โ”ƒ            โ”ƒ
โ”กโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ฉ
โ”‚ Total Time (HEAD)                  โ”‚ 25222.05ms โ”‚
โ”‚ Total Time (support-u32-hashmap)   โ”‚ 25567.98ms โ”‚
โ”‚ Average Time (HEAD)                โ”‚  3152.76ms โ”‚
โ”‚ Average Time (support-u32-hashmap) โ”‚  3196.00ms โ”‚
โ”‚ Queries Faster                     โ”‚          1 โ”‚
โ”‚ Queries Slower                     โ”‚          2 โ”‚
โ”‚ Queries with No Change             โ”‚          5 โ”‚
โ”‚ Queries with Failure               โ”‚          0 โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
--------------------
Benchmark clickbench_partitioned.json
--------------------
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
โ”ƒ Query        โ”ƒ        HEAD โ”ƒ support-u32-hashmap โ”ƒ        Change โ”ƒ
โ”กโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ฉ
โ”‚ QQuery 0     โ”‚     2.43 ms โ”‚             2.18 ms โ”‚ +1.11x faster โ”‚
โ”‚ QQuery 1     โ”‚    35.82 ms โ”‚            34.78 ms โ”‚     no change โ”‚
โ”‚ QQuery 2     โ”‚    82.71 ms โ”‚            82.00 ms โ”‚     no change โ”‚
โ”‚ QQuery 3     โ”‚    97.18 ms โ”‚            97.71 ms โ”‚     no change โ”‚
โ”‚ QQuery 4     โ”‚   649.57 ms โ”‚           589.40 ms โ”‚ +1.10x faster โ”‚
โ”‚ QQuery 5     โ”‚   880.40 ms โ”‚           885.32 ms โ”‚     no change โ”‚
โ”‚ QQuery 6     โ”‚     2.31 ms โ”‚             2.19 ms โ”‚ +1.06x faster โ”‚
โ”‚ QQuery 7     โ”‚    38.57 ms โ”‚            39.24 ms โ”‚     no change โ”‚
โ”‚ QQuery 8     โ”‚   875.15 ms โ”‚           871.19 ms โ”‚     no change โ”‚
โ”‚ QQuery 9     โ”‚  1204.58 ms โ”‚          1197.94 ms โ”‚     no change โ”‚
โ”‚ QQuery 10    โ”‚   256.41 ms โ”‚           264.73 ms โ”‚     no change โ”‚
โ”‚ QQuery 11    โ”‚   295.15 ms โ”‚           294.16 ms โ”‚     no change โ”‚
โ”‚ QQuery 12    โ”‚   876.87 ms โ”‚           898.49 ms โ”‚     no change โ”‚
โ”‚ QQuery 13    โ”‚  1253.67 ms โ”‚          1260.00 ms โ”‚     no change โ”‚
โ”‚ QQuery 14    โ”‚   805.60 ms โ”‚           822.48 ms โ”‚     no change โ”‚
โ”‚ QQuery 15    โ”‚   775.34 ms โ”‚           792.68 ms โ”‚     no change โ”‚
โ”‚ QQuery 16    โ”‚  1582.94 ms โ”‚          1617.44 ms โ”‚     no change โ”‚
โ”‚ QQuery 17    โ”‚  1575.57 ms โ”‚          1620.19 ms โ”‚     no change โ”‚
โ”‚ QQuery 18    โ”‚  2812.98 ms โ”‚          2877.62 ms โ”‚     no change โ”‚
โ”‚ QQuery 19    โ”‚    86.50 ms โ”‚            86.36 ms โ”‚     no change โ”‚
โ”‚ QQuery 20    โ”‚  1147.33 ms โ”‚          1142.38 ms โ”‚     no change โ”‚
โ”‚ QQuery 21    โ”‚  1304.30 ms โ”‚          1299.10 ms โ”‚     no change โ”‚
โ”‚ QQuery 22    โ”‚  2109.41 ms โ”‚          2165.23 ms โ”‚     no change โ”‚
โ”‚ QQuery 23    โ”‚  7382.16 ms โ”‚          7578.04 ms โ”‚     no change โ”‚
โ”‚ QQuery 24    โ”‚   433.78 ms โ”‚           449.56 ms โ”‚     no change โ”‚
โ”‚ QQuery 25    โ”‚   305.40 ms โ”‚           308.23 ms โ”‚     no change โ”‚
โ”‚ QQuery 26    โ”‚   428.78 ms โ”‚           444.90 ms โ”‚     no change โ”‚
โ”‚ QQuery 27    โ”‚  1537.21 ms โ”‚          1565.57 ms โ”‚     no change โ”‚
โ”‚ QQuery 28    โ”‚ 12883.98 ms โ”‚         11966.19 ms โ”‚ +1.08x faster โ”‚
โ”‚ QQuery 29    โ”‚   532.77 ms โ”‚           513.35 ms โ”‚     no change โ”‚
โ”‚ QQuery 30    โ”‚   765.17 ms โ”‚           783.38 ms โ”‚     no change โ”‚
โ”‚ QQuery 31    โ”‚   770.79 ms โ”‚           808.37 ms โ”‚     no change โ”‚
โ”‚ QQuery 32    โ”‚  2367.00 ms โ”‚          2361.17 ms โ”‚     no change โ”‚
โ”‚ QQuery 33    โ”‚  3106.32 ms โ”‚          3186.17 ms โ”‚     no change โ”‚
โ”‚ QQuery 34    โ”‚  3283.80 ms โ”‚          3176.69 ms โ”‚     no change โ”‚
โ”‚ QQuery 35    โ”‚  1228.46 ms โ”‚          1254.86 ms โ”‚     no change โ”‚
โ”‚ QQuery 36    โ”‚   122.51 ms โ”‚           122.45 ms โ”‚     no change โ”‚
โ”‚ QQuery 37    โ”‚    54.42 ms โ”‚            52.77 ms โ”‚     no change โ”‚
โ”‚ QQuery 38    โ”‚   118.02 ms โ”‚           118.88 ms โ”‚     no change โ”‚
โ”‚ QQuery 39    โ”‚   196.50 ms โ”‚           194.35 ms โ”‚     no change โ”‚
โ”‚ QQuery 40    โ”‚    40.97 ms โ”‚            40.46 ms โ”‚     no change โ”‚
โ”‚ QQuery 41    โ”‚    39.08 ms โ”‚            38.28 ms โ”‚     no change โ”‚
โ”‚ QQuery 42    โ”‚    33.07 ms โ”‚            33.30 ms โ”‚     no change โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
โ”ƒ Benchmark Summary                  โ”ƒ            โ”ƒ
โ”กโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ฉ
โ”‚ Total Time (HEAD)                  โ”‚ 54381.00ms โ”‚
โ”‚ Total Time (support-u32-hashmap)   โ”‚ 53939.79ms โ”‚
โ”‚ Average Time (HEAD)                โ”‚  1264.67ms โ”‚
โ”‚ Average Time (support-u32-hashmap) โ”‚  1254.41ms โ”‚
โ”‚ Queries Faster                     โ”‚          4 โ”‚
โ”‚ Queries Slower                     โ”‚          0 โ”‚
โ”‚ Queries with No Change             โ”‚         39 โ”‚
โ”‚ Queries with Failure               โ”‚          0 โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
--------------------
Benchmark tpch_mem_sf1.json
--------------------
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
โ”ƒ Query        โ”ƒ      HEAD โ”ƒ support-u32-hashmap โ”ƒ        Change โ”ƒ
โ”กโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ฉ
โ”‚ QQuery 1     โ”‚  98.54 ms โ”‚            97.07 ms โ”‚     no change โ”‚
โ”‚ QQuery 2     โ”‚  20.04 ms โ”‚            20.71 ms โ”‚     no change โ”‚
โ”‚ QQuery 3     โ”‚  32.35 ms โ”‚            31.90 ms โ”‚     no change โ”‚
โ”‚ QQuery 4     โ”‚  18.71 ms โ”‚            18.54 ms โ”‚     no change โ”‚
โ”‚ QQuery 5     โ”‚  50.28 ms โ”‚            50.68 ms โ”‚     no change โ”‚
โ”‚ QQuery 6     โ”‚  11.77 ms โ”‚            11.75 ms โ”‚     no change โ”‚
โ”‚ QQuery 7     โ”‚  93.46 ms โ”‚            88.13 ms โ”‚ +1.06x faster โ”‚
โ”‚ QQuery 8     โ”‚  25.49 ms โ”‚            25.07 ms โ”‚     no change โ”‚
โ”‚ QQuery 9     โ”‚  54.54 ms โ”‚            53.28 ms โ”‚     no change โ”‚
โ”‚ QQuery 10    โ”‚  43.48 ms โ”‚            42.65 ms โ”‚     no change โ”‚
โ”‚ QQuery 11    โ”‚  11.37 ms โ”‚            11.35 ms โ”‚     no change โ”‚
โ”‚ QQuery 12    โ”‚  36.02 ms โ”‚            34.57 ms โ”‚     no change โ”‚
โ”‚ QQuery 13    โ”‚  26.86 ms โ”‚            26.67 ms โ”‚     no change โ”‚
โ”‚ QQuery 14    โ”‚   9.77 ms โ”‚             9.57 ms โ”‚     no change โ”‚
โ”‚ QQuery 15    โ”‚  19.01 ms โ”‚            18.98 ms โ”‚     no change โ”‚
โ”‚ QQuery 16    โ”‚  18.38 ms โ”‚            18.23 ms โ”‚     no change โ”‚
โ”‚ QQuery 17    โ”‚  96.47 ms โ”‚            97.63 ms โ”‚     no change โ”‚
โ”‚ QQuery 18    โ”‚ 185.86 ms โ”‚           201.01 ms โ”‚  1.08x slower โ”‚
โ”‚ QQuery 19    โ”‚  24.92 ms โ”‚            24.58 ms โ”‚     no change โ”‚
โ”‚ QQuery 20    โ”‚  31.25 ms โ”‚            32.14 ms โ”‚     no change โ”‚
โ”‚ QQuery 21    โ”‚ 146.24 ms โ”‚           143.79 ms โ”‚     no change โ”‚
โ”‚ QQuery 22    โ”‚  14.79 ms โ”‚            14.93 ms โ”‚     no change โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
โ”ƒ Benchmark Summary                  โ”ƒ           โ”ƒ
โ”กโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ฉ
โ”‚ Total Time (HEAD)                  โ”‚ 1069.58ms โ”‚
โ”‚ Total Time (support-u32-hashmap)   โ”‚ 1073.22ms โ”‚
โ”‚ Average Time (HEAD)                โ”‚   48.62ms โ”‚
โ”‚ Average Time (support-u32-hashmap) โ”‚   48.78ms โ”‚
โ”‚ Queries Faster                     โ”‚         1 โ”‚
โ”‚ Queries Slower                     โ”‚         1 โ”‚
โ”‚ Queries with No Change             โ”‚        20 โ”‚
โ”‚ Queries with Failure               โ”‚         0 โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

alamb avatar Jul 08 '25 15:07 alamb

๐Ÿค– ./gh_compare_branch.sh Benchmark Script Running Linux aal-dev 6.11.0-1016-gcp #16~24.04.1-Ubuntu SMP Wed May 28 02:40:52 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Comparing support-u32-hashmap (6c1543d549bdd90603b91e8c4644b5545b8fe44e) to ebb8e9591322ee0a6fbc42cd43ce60f0e20981ba diff using: tpch_mem10 Results will be posted here when complete

alamb avatar Jul 08 '25 16:07 alamb

๐Ÿค–: Benchmark completed

Details

Comparing HEAD and support-u32-hashmap
--------------------
Benchmark tpch_mem_sf10.json
--------------------
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
โ”ƒ Query        โ”ƒ HEAD โ”ƒ support-u32-hashmap โ”ƒ       Change โ”ƒ
โ”กโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ฉ
โ”‚ QQuery 1     โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 2     โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 3     โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 4     โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 5     โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 6     โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 7     โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 8     โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 9     โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 10    โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 11    โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 12    โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 13    โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 14    โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 15    โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 16    โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 17    โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 18    โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 19    โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 20    โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 21    โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 22    โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”“
โ”ƒ Benchmark Summary                  โ”ƒ        โ”ƒ
โ”กโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”ฉ
โ”‚ Total Time (HEAD)                  โ”‚ 0.00ms โ”‚
โ”‚ Total Time (support-u32-hashmap)   โ”‚ 0.00ms โ”‚
โ”‚ Average Time (HEAD)                โ”‚ 0.00ms โ”‚
โ”‚ Average Time (support-u32-hashmap) โ”‚ 0.00ms โ”‚
โ”‚ Queries Faster                     โ”‚      0 โ”‚
โ”‚ Queries Slower                     โ”‚      0 โ”‚
โ”‚ Queries with No Change             โ”‚      0 โ”‚
โ”‚ Queries with Failure               โ”‚     22 โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

alamb avatar Jul 08 '25 16:07 alamb

๐Ÿค– ./gh_compare_branch.sh Benchmark Script Running Linux aal-dev 6.11.0-1016-gcp #16~24.04.1-Ubuntu SMP Wed May 28 02:40:52 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Comparing support-u32-hashmap (6c1543d549bdd90603b91e8c4644b5545b8fe44e) to ebb8e9591322ee0a6fbc42cd43ce60f0e20981ba diff using: tpch_mem10 Results will be posted here when complete

alamb avatar Jul 08 '25 16:07 alamb

๐Ÿค–: Benchmark completed

Details

Comparing HEAD and support-u32-hashmap
--------------------
Benchmark tpch_mem_sf10.json
--------------------
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
โ”ƒ Query        โ”ƒ HEAD โ”ƒ support-u32-hashmap โ”ƒ       Change โ”ƒ
โ”กโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ฉ
โ”‚ QQuery 1     โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 2     โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 3     โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 4     โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 5     โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 6     โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 7     โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 8     โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 9     โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 10    โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 11    โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 12    โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 13    โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 14    โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 15    โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 16    โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 17    โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 18    โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 19    โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 20    โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 21    โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ”‚ QQuery 22    โ”‚ FAIL โ”‚                FAIL โ”‚ incomparable โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”“
โ”ƒ Benchmark Summary                  โ”ƒ        โ”ƒ
โ”กโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”ฉ
โ”‚ Total Time (HEAD)                  โ”‚ 0.00ms โ”‚
โ”‚ Total Time (support-u32-hashmap)   โ”‚ 0.00ms โ”‚
โ”‚ Average Time (HEAD)                โ”‚ 0.00ms โ”‚
โ”‚ Average Time (support-u32-hashmap) โ”‚ 0.00ms โ”‚
โ”‚ Queries Faster                     โ”‚      0 โ”‚
โ”‚ Queries Slower                     โ”‚      0 โ”‚
โ”‚ Queries with No Change             โ”‚      0 โ”‚
โ”‚ Queries with Failure               โ”‚     22 โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

alamb avatar Jul 08 '25 16:07 alamb

๐Ÿค– ./gh_compare_branch.sh Benchmark Script Running Linux aal-dev 6.11.0-1016-gcp #16~24.04.1-Ubuntu SMP Wed May 28 02:40:52 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Comparing support-u32-hashmap (6c1543d549bdd90603b91e8c4644b5545b8fe44e) to ebb8e9591322ee0a6fbc42cd43ce60f0e20981ba diff using: tpch_mem10 Results will be posted here when complete

alamb avatar Jul 08 '25 16:07 alamb

๐Ÿค– ./gh_compare_branch.sh Benchmark Script Running Linux aal-dev 6.11.0-1016-gcp #16~24.04.1-Ubuntu SMP Wed May 28 02:40:52 UTC 2025 x86_64 x86_64 x86_64 GNU/Linux Comparing support-u32-hashmap (6c1543d549bdd90603b91e8c4644b5545b8fe44e) to ebb8e9591322ee0a6fbc42cd43ce60f0e20981ba diff using: tpch_mem clickbench_partitioned clickbench_extended Results will be posted here when complete

alamb avatar Jul 08 '25 16:07 alamb

๐Ÿค–: Benchmark completed

Details

Comparing HEAD and support-u32-hashmap
--------------------
Benchmark clickbench_extended.json
--------------------
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
โ”ƒ Query        โ”ƒ        HEAD โ”ƒ support-u32-hashmap โ”ƒ       Change โ”ƒ
โ”กโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ฉ
โ”‚ QQuery 0     โ”‚  1930.70 ms โ”‚          1957.94 ms โ”‚    no change โ”‚
โ”‚ QQuery 1     โ”‚   677.21 ms โ”‚           798.33 ms โ”‚ 1.18x slower โ”‚
โ”‚ QQuery 2     โ”‚  1357.45 ms โ”‚          1481.82 ms โ”‚ 1.09x slower โ”‚
โ”‚ QQuery 3     โ”‚   681.52 ms โ”‚           678.49 ms โ”‚    no change โ”‚
โ”‚ QQuery 4     โ”‚  1382.40 ms โ”‚          1383.83 ms โ”‚    no change โ”‚
โ”‚ QQuery 5     โ”‚ 15028.67 ms โ”‚         15023.36 ms โ”‚    no change โ”‚
โ”‚ QQuery 6     โ”‚  2054.14 ms โ”‚          2068.44 ms โ”‚    no change โ”‚
โ”‚ QQuery 7     โ”‚  1933.85 ms โ”‚          1881.38 ms โ”‚    no change โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
โ”ƒ Benchmark Summary                  โ”ƒ            โ”ƒ
โ”กโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ฉ
โ”‚ Total Time (HEAD)                  โ”‚ 25045.95ms โ”‚
โ”‚ Total Time (support-u32-hashmap)   โ”‚ 25273.59ms โ”‚
โ”‚ Average Time (HEAD)                โ”‚  3130.74ms โ”‚
โ”‚ Average Time (support-u32-hashmap) โ”‚  3159.20ms โ”‚
โ”‚ Queries Faster                     โ”‚          0 โ”‚
โ”‚ Queries Slower                     โ”‚          2 โ”‚
โ”‚ Queries with No Change             โ”‚          6 โ”‚
โ”‚ Queries with Failure               โ”‚          0 โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
--------------------
Benchmark clickbench_partitioned.json
--------------------
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
โ”ƒ Query        โ”ƒ        HEAD โ”ƒ support-u32-hashmap โ”ƒ        Change โ”ƒ
โ”กโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ฉ
โ”‚ QQuery 0     โ”‚     2.21 ms โ”‚             2.71 ms โ”‚  1.22x slower โ”‚
โ”‚ QQuery 1     โ”‚    33.32 ms โ”‚            34.20 ms โ”‚     no change โ”‚
โ”‚ QQuery 2     โ”‚    79.77 ms โ”‚            80.70 ms โ”‚     no change โ”‚
โ”‚ QQuery 3     โ”‚    99.32 ms โ”‚            98.22 ms โ”‚     no change โ”‚
โ”‚ QQuery 4     โ”‚   592.98 ms โ”‚           588.77 ms โ”‚     no change โ”‚
โ”‚ QQuery 5     โ”‚   827.02 ms โ”‚           838.44 ms โ”‚     no change โ”‚
โ”‚ QQuery 6     โ”‚     2.24 ms โ”‚             2.25 ms โ”‚     no change โ”‚
โ”‚ QQuery 7     โ”‚    38.09 ms โ”‚            38.69 ms โ”‚     no change โ”‚
โ”‚ QQuery 8     โ”‚   853.29 ms โ”‚           853.08 ms โ”‚     no change โ”‚
โ”‚ QQuery 9     โ”‚  1136.14 ms โ”‚          1152.72 ms โ”‚     no change โ”‚
โ”‚ QQuery 10    โ”‚   261.54 ms โ”‚           261.42 ms โ”‚     no change โ”‚
โ”‚ QQuery 11    โ”‚   285.91 ms โ”‚           293.48 ms โ”‚     no change โ”‚
โ”‚ QQuery 12    โ”‚   843.87 ms โ”‚           862.33 ms โ”‚     no change โ”‚
โ”‚ QQuery 13    โ”‚  1263.17 ms โ”‚          1227.42 ms โ”‚     no change โ”‚
โ”‚ QQuery 14    โ”‚   794.84 ms โ”‚           811.95 ms โ”‚     no change โ”‚
โ”‚ QQuery 15    โ”‚   758.54 ms โ”‚           773.98 ms โ”‚     no change โ”‚
โ”‚ QQuery 16    โ”‚  1625.44 ms โ”‚          1593.33 ms โ”‚     no change โ”‚
โ”‚ QQuery 17    โ”‚  1583.75 ms โ”‚          1604.20 ms โ”‚     no change โ”‚
โ”‚ QQuery 18    โ”‚  2820.29 ms โ”‚          2840.30 ms โ”‚     no change โ”‚
โ”‚ QQuery 19    โ”‚    86.91 ms โ”‚            84.85 ms โ”‚     no change โ”‚
โ”‚ QQuery 20    โ”‚  1149.21 ms โ”‚          1149.69 ms โ”‚     no change โ”‚
โ”‚ QQuery 21    โ”‚  1284.54 ms โ”‚          1308.73 ms โ”‚     no change โ”‚
โ”‚ QQuery 22    โ”‚  2113.86 ms โ”‚          2149.07 ms โ”‚     no change โ”‚
โ”‚ QQuery 23    โ”‚  7351.12 ms โ”‚          7555.84 ms โ”‚     no change โ”‚
โ”‚ QQuery 24    โ”‚   441.28 ms โ”‚           445.38 ms โ”‚     no change โ”‚
โ”‚ QQuery 25    โ”‚   298.98 ms โ”‚           310.10 ms โ”‚     no change โ”‚
โ”‚ QQuery 26    โ”‚   443.05 ms โ”‚           434.69 ms โ”‚     no change โ”‚
โ”‚ QQuery 27    โ”‚  1540.43 ms โ”‚          1535.79 ms โ”‚     no change โ”‚
โ”‚ QQuery 28    โ”‚ 12749.97 ms โ”‚         11922.38 ms โ”‚ +1.07x faster โ”‚
โ”‚ QQuery 29    โ”‚   539.74 ms โ”‚           515.15 ms โ”‚     no change โ”‚
โ”‚ QQuery 30    โ”‚   772.49 ms โ”‚           781.73 ms โ”‚     no change โ”‚
โ”‚ QQuery 31    โ”‚   788.43 ms โ”‚           797.62 ms โ”‚     no change โ”‚
โ”‚ QQuery 32    โ”‚  2360.44 ms โ”‚          2395.64 ms โ”‚     no change โ”‚
โ”‚ QQuery 33    โ”‚  3139.22 ms โ”‚          3142.80 ms โ”‚     no change โ”‚
โ”‚ QQuery 34    โ”‚  3171.83 ms โ”‚          3192.95 ms โ”‚     no change โ”‚
โ”‚ QQuery 35    โ”‚  1223.89 ms โ”‚          1247.48 ms โ”‚     no change โ”‚
โ”‚ QQuery 36    โ”‚   119.12 ms โ”‚           123.31 ms โ”‚     no change โ”‚
โ”‚ QQuery 37    โ”‚    51.06 ms โ”‚            50.90 ms โ”‚     no change โ”‚
โ”‚ QQuery 38    โ”‚   117.58 ms โ”‚           121.28 ms โ”‚     no change โ”‚
โ”‚ QQuery 39    โ”‚   192.58 ms โ”‚           197.01 ms โ”‚     no change โ”‚
โ”‚ QQuery 40    โ”‚    43.25 ms โ”‚            41.98 ms โ”‚     no change โ”‚
โ”‚ QQuery 41    โ”‚    39.19 ms โ”‚            38.33 ms โ”‚     no change โ”‚
โ”‚ QQuery 42    โ”‚    32.36 ms โ”‚            32.12 ms โ”‚     no change โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
โ”ƒ Benchmark Summary                  โ”ƒ            โ”ƒ
โ”กโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ฉ
โ”‚ Total Time (HEAD)                  โ”‚ 53952.27ms โ”‚
โ”‚ Total Time (support-u32-hashmap)   โ”‚ 53533.03ms โ”‚
โ”‚ Average Time (HEAD)                โ”‚  1254.70ms โ”‚
โ”‚ Average Time (support-u32-hashmap) โ”‚  1244.95ms โ”‚
โ”‚ Queries Faster                     โ”‚          1 โ”‚
โ”‚ Queries Slower                     โ”‚          1 โ”‚
โ”‚ Queries with No Change             โ”‚         41 โ”‚
โ”‚ Queries with Failure               โ”‚          0 โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
--------------------
Benchmark tpch_mem_sf1.json
--------------------
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
โ”ƒ Query        โ”ƒ      HEAD โ”ƒ support-u32-hashmap โ”ƒ        Change โ”ƒ
โ”กโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ฉ
โ”‚ QQuery 1     โ”‚  99.36 ms โ”‚            97.70 ms โ”‚     no change โ”‚
โ”‚ QQuery 2     โ”‚  21.37 ms โ”‚            20.73 ms โ”‚     no change โ”‚
โ”‚ QQuery 3     โ”‚  32.39 ms โ”‚            32.45 ms โ”‚     no change โ”‚
โ”‚ QQuery 4     โ”‚  18.84 ms โ”‚            18.05 ms โ”‚     no change โ”‚
โ”‚ QQuery 5     โ”‚  50.41 ms โ”‚            50.26 ms โ”‚     no change โ”‚
โ”‚ QQuery 6     โ”‚  11.88 ms โ”‚            11.61 ms โ”‚     no change โ”‚
โ”‚ QQuery 7     โ”‚  89.55 ms โ”‚            84.48 ms โ”‚ +1.06x faster โ”‚
โ”‚ QQuery 8     โ”‚  25.58 ms โ”‚            23.78 ms โ”‚ +1.08x faster โ”‚
โ”‚ QQuery 9     โ”‚  54.98 ms โ”‚            53.07 ms โ”‚     no change โ”‚
โ”‚ QQuery 10    โ”‚  42.29 ms โ”‚            42.47 ms โ”‚     no change โ”‚
โ”‚ QQuery 11    โ”‚  11.34 ms โ”‚            11.28 ms โ”‚     no change โ”‚
โ”‚ QQuery 12    โ”‚  35.44 ms โ”‚            35.15 ms โ”‚     no change โ”‚
โ”‚ QQuery 13    โ”‚  26.09 ms โ”‚            25.54 ms โ”‚     no change โ”‚
โ”‚ QQuery 14    โ”‚   9.81 ms โ”‚             9.69 ms โ”‚     no change โ”‚
โ”‚ QQuery 15    โ”‚  19.41 ms โ”‚            18.82 ms โ”‚     no change โ”‚
โ”‚ QQuery 16    โ”‚  17.99 ms โ”‚            17.77 ms โ”‚     no change โ”‚
โ”‚ QQuery 17    โ”‚  96.76 ms โ”‚            93.99 ms โ”‚     no change โ”‚
โ”‚ QQuery 18    โ”‚ 190.99 ms โ”‚           189.44 ms โ”‚     no change โ”‚
โ”‚ QQuery 19    โ”‚  24.77 ms โ”‚            24.99 ms โ”‚     no change โ”‚
โ”‚ QQuery 20    โ”‚  31.07 ms โ”‚            31.07 ms โ”‚     no change โ”‚
โ”‚ QQuery 21    โ”‚ 145.13 ms โ”‚           145.34 ms โ”‚     no change โ”‚
โ”‚ QQuery 22    โ”‚  14.74 ms โ”‚            14.71 ms โ”‚     no change โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ณโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”“
โ”ƒ Benchmark Summary                  โ”ƒ           โ”ƒ
โ”กโ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ•‡โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”โ”ฉ
โ”‚ Total Time (HEAD)                  โ”‚ 1070.19ms โ”‚
โ”‚ Total Time (support-u32-hashmap)   โ”‚ 1052.40ms โ”‚
โ”‚ Average Time (HEAD)                โ”‚   48.65ms โ”‚
โ”‚ Average Time (support-u32-hashmap) โ”‚   47.84ms โ”‚
โ”‚ Queries Faster                     โ”‚         2 โ”‚
โ”‚ Queries Slower                     โ”‚         0 โ”‚
โ”‚ Queries with No Change             โ”‚        20 โ”‚
โ”‚ Queries with Failure               โ”‚         0 โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

alamb avatar Jul 08 '25 16:07 alamb

TLDR this branch looks good from my performance perspective. Thank you @jonathanc-n and @Dandandan

alamb avatar Jul 08 '25 19:07 alamb