|
1 | 1 | # SQL Parser Performance Report |
2 | 2 |
|
3 | | -**Date:** 2026-03-24 17:56 UTC |
| 3 | +**Date:** 2026-03-24 21:48 UTC |
4 | 4 | **Host:** ci-big6-202511.vm |
5 | 5 | **CPU:** AMD Ryzen 9 5950X 16-Core Processor |
6 | 6 | **OS:** Linux 6.17.0-14-generic |
7 | 7 | **Compiler:** g++ (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0 |
8 | | -**Git:** main @ f97f966 |
| 8 | +**Git:** main @ 7f53668 |
9 | 9 | **Unit tests:** 430 passing |
10 | 10 |
|
11 | 11 | --- |
|
14 | 14 |
|
15 | 15 | | Operation | Latency | Target | Status | |
16 | 16 | |---|---|---|---| |
17 | | -| BM_Classify_Insert | 209 ns | <500ns | MET | |
18 | | -| BM_Classify_Update | 240 ns | <500ns | MET | |
19 | | -| BM_Classify_Delete | 184 ns | <500ns | MET | |
20 | | -| BM_Classify_Begin | 35.9 ns | <100ns | MET | |
21 | | -| BM_Set_Simple | 129 ns | <300ns | MET | |
22 | | -| BM_Set_Names | 131 ns | <300ns | MET | |
23 | | -| BM_Set_MultiVar | 257 ns | <300ns | MET | |
24 | | -| BM_Set_FunctionRHS | 215 ns | <300ns | MET | |
25 | | -| BM_Select_Simple | 217 ns | <500ns | MET | |
26 | | -| BM_Select_MultiColumn | 462 ns | <500ns | MET | |
27 | | -| BM_Select_Join | 591 ns | <2us | MET | |
28 | | -| BM_Select_Complex | 1403 ns | <2us | MET | |
29 | | -| BM_Select_MultiJoin | 1452 ns | <2us | MET | |
30 | | -| BM_Emit_SetSimple | 131 ns | <500ns | MET | |
31 | | -| BM_Emit_SelectSimple | 263 ns | <500ns | MET | |
32 | | -| BM_ArenaReset | 3.55 ns | <10ns | MET | |
33 | | -| BM_PgSQL_Select_Simple | 220 ns | — | — | |
34 | | -| BM_PgSQL_Set_Simple | 96.9 ns | — | — | |
35 | | -| BM_MT_Set_Simple/threads:1 | 124 ns | — | — | |
36 | | -| BM_MT_Set_Simple/threads:2 | 129 ns | — | — | |
37 | | -| BM_MT_Set_Simple/threads:4 | 134 ns | — | — | |
38 | | -| BM_MT_Set_Simple/threads:8 | 138 ns | — | — | |
39 | | -| BM_MT_Select_Simple/threads:1 | 215 ns | — | — | |
40 | | -| BM_MT_Select_Simple/threads:2 | 225 ns | — | — | |
41 | | -| BM_MT_Select_Simple/threads:4 | 231 ns | — | — | |
42 | | -| BM_MT_Select_Simple/threads:8 | 246 ns | — | — | |
43 | | -| BM_MT_Select_Complex/threads:1 | 1401 ns | — | — | |
44 | | -| BM_MT_Select_Complex/threads:2 | 1403 ns | — | — | |
45 | | -| BM_MT_Select_Complex/threads:4 | 1459 ns | — | — | |
46 | | -| BM_MT_Select_Complex/threads:8 | 1509 ns | — | — | |
47 | | -| BM_MT_Classify_Begin/threads:1 | 35.8 ns | — | — | |
48 | | -| BM_MT_Classify_Begin/threads:2 | 36.7 ns | — | — | |
49 | | -| BM_MT_Classify_Begin/threads:4 | 37.5 ns | — | — | |
50 | | -| BM_MT_Classify_Begin/threads:8 | 38.2 ns | — | — | |
51 | | -| BM_Percentile_Set_Simple | 909 ns | — | — | |
52 | | -| BM_Percentile_Select_Simple | 1008 ns | — | — | |
53 | | -| BM_Percentile_Select_Complex | 2076 ns | — | — | |
54 | | -| BM_Percentile_Classify_Begin | 813 ns | — | — | |
| 17 | +| BM_Classify_Insert | 192 ns | <500ns | MET | |
| 18 | +| BM_Classify_Update | 195 ns | <500ns | MET | |
| 19 | +| BM_Classify_Delete | 147 ns | <500ns | MET | |
| 20 | +| BM_Classify_Begin | 29.0 ns | <100ns | MET | |
| 21 | +| BM_Set_Simple | 114 ns | <300ns | MET | |
| 22 | +| BM_Set_Names | 109 ns | <300ns | MET | |
| 23 | +| BM_Set_MultiVar | 240 ns | <300ns | MET | |
| 24 | +| BM_Set_FunctionRHS | 174 ns | <300ns | MET | |
| 25 | +| BM_Select_Simple | 186 ns | <500ns | MET | |
| 26 | +| BM_Select_MultiColumn | 355 ns | <500ns | MET | |
| 27 | +| BM_Select_Join | 426 ns | <2us | MET | |
| 28 | +| BM_Select_Complex | 1063 ns | <2us | MET | |
| 29 | +| BM_Select_MultiJoin | 1046 ns | <2us | MET | |
| 30 | +| BM_Emit_SetSimple | 116 ns | <500ns | MET | |
| 31 | +| BM_Emit_SelectSimple | 242 ns | <500ns | MET | |
| 32 | +| BM_ArenaReset | 3.80 ns | <10ns | MET | |
| 33 | +| BM_PgSQL_Select_Simple | 177 ns | — | — | |
| 34 | +| BM_PgSQL_Set_Simple | 88.9 ns | — | — | |
| 35 | +| BM_MT_Set_Simple/threads:1 | 113 ns | — | — | |
| 36 | +| BM_MT_Set_Simple/threads:2 | 113 ns | — | — | |
| 37 | +| BM_MT_Set_Simple/threads:4 | 115 ns | — | — | |
| 38 | +| BM_MT_Set_Simple/threads:8 | 121 ns | — | — | |
| 39 | +| BM_MT_Select_Simple/threads:1 | 174 ns | — | — | |
| 40 | +| BM_MT_Select_Simple/threads:2 | 223 ns | — | — | |
| 41 | +| BM_MT_Select_Simple/threads:4 | 198 ns | — | — | |
| 42 | +| BM_MT_Select_Simple/threads:8 | 204 ns | — | — | |
| 43 | +| BM_MT_Select_Complex/threads:1 | 1042 ns | — | — | |
| 44 | +| BM_MT_Select_Complex/threads:2 | 1049 ns | — | — | |
| 45 | +| BM_MT_Select_Complex/threads:4 | 1093 ns | — | — | |
| 46 | +| BM_MT_Select_Complex/threads:8 | 1192 ns | — | — | |
| 47 | +| BM_MT_Classify_Begin/threads:1 | 29.5 ns | — | — | |
| 48 | +| BM_MT_Classify_Begin/threads:2 | 29.3 ns | — | — | |
| 49 | +| BM_MT_Classify_Begin/threads:4 | 29.7 ns | — | — | |
| 50 | +| BM_MT_Classify_Begin/threads:8 | 32.0 ns | — | — | |
| 51 | +| BM_Percentile_Set_Simple | 915 ns | — | — | |
| 52 | +| BM_Percentile_Select_Simple | 965 ns | — | — | |
| 53 | +| BM_Percentile_Select_Complex | 1722 ns | — | — | |
| 54 | +| BM_Percentile_Classify_Begin | 807 ns | — | — | |
55 | 55 |
|
56 | 56 | --- |
57 | 57 |
|
58 | 58 | ## Multi-Threaded Scaling (per-thread latency) |
59 | 59 |
|
60 | 60 | | Operation | 1 thread | 2 threads | 4 threads | 8 threads | |
61 | 61 | |---|---|---|---|---| |
62 | | -| BM_MT_Set_Simple | 124ns | 129ns | 134ns | 138ns | |
63 | | -| BM_MT_Select_Simple | 215ns | 225ns | 231ns | 246ns | |
64 | | -| BM_MT_Select_Complex | 1401ns | 1403ns | 1459ns | 1509ns | |
65 | | -| BM_MT_Classify_Begin | 35.8ns | 36.7ns | 37.5ns | 38.2ns | |
| 62 | +| BM_MT_Set_Simple | 113ns | 113ns | 115ns | 121ns | |
| 63 | +| BM_MT_Select_Simple | 174ns | 223ns | 198ns | 204ns | |
| 64 | +| BM_MT_Select_Complex | 1042ns | 1049ns | 1093ns | 1192ns | |
| 65 | +| BM_MT_Classify_Begin | 29.5ns | 29.3ns | 29.7ns | 32.0ns | |
66 | 66 |
|
67 | 67 | --- |
68 | 68 |
|
69 | 69 | ## Percentile Latency |
70 | 70 |
|
71 | 71 | | Operation | avg | p50 | p95 | p99 | min | max | |
72 | 72 | |---|---|---|---|---|---|---| |
73 | | -| BM_Percentile_Set_Simple | 936.994ns | 932ns | 942ns | 952ns | 911ns | 39.593kns | |
74 | | -| BM_Percentile_Select_Simple | 1.04875kns | 1.042kns | 1.052kns | 1.071kns | 1.021kns | 221.729kns | |
75 | | -| BM_Percentile_Select_Complex | 2.14065kns | 2.124kns | 2.164kns | 2.184kns | 2.074kns | 25.176kns | |
76 | | -| BM_Percentile_Classify_Begin | 833.356ns | 831ns | 842ns | 862ns | 811ns | 203.486kns | |
| 73 | +| BM_Percentile_Set_Simple | 948.284ns | 922ns | 1.052kns | 1.553kns | 871ns | 39.142kns | |
| 74 | +| BM_Percentile_Select_Simple | 1.00773kns | 992ns | 1.041kns | 1.362kns | 941ns | 62.395kns | |
| 75 | +| BM_Percentile_Select_Complex | 1.79424kns | 1.763kns | 1.803kns | 2.665kns | 1.723kns | 54.14kns | |
| 76 | +| BM_Percentile_Classify_Begin | 831.536ns | 821ns | 892ns | 1.082kns | 781ns | 60.311kns | |
77 | 77 |
|
78 | 78 | --- |
79 | 79 |
|
|
0 commit comments