Skip to content

Latest commit

History

History
106 lines (91 loc) · 4.21 KB

File metadata and controls

106 lines (91 loc) · 4.21 KB

SQL Parser Performance Report

Date: 2026-04-14 13:26 UTC Host: ci-big6-202511.vm CPU: AMD Ryzen 9 5950X 16-Core Processor OS: Linux 6.17.0-14-generic Compiler: g++ (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0 Git: main @ 1f65334 Unit tests: 1160 passing


Benchmark Results (Release -O3)

OperationLatencyTargetStatus
BM_Classify_Insert189 ns<500nsMET
BM_Classify_Update195 ns<500nsMET
BM_Classify_Delete143 ns<500nsMET
BM_Classify_Begin30.2 ns<100nsMET
BM_Set_Simple107 ns<300nsMET
BM_Set_Names105 ns<300nsMET
BM_Set_MultiVar231 ns<300nsMET
BM_Set_FunctionRHS168 ns<300nsMET
BM_Select_Simple178 ns<500nsMET
BM_Select_MultiColumn367 ns<500nsMET
BM_Select_Join449 ns<2usMET
BM_Select_Complex1035 ns<2usMET
BM_Select_MultiJoin1038 ns<2usMET
BM_Emit_SetSimple119 ns<500nsMET
BM_Emit_SelectSimple256 ns<500nsMET
BM_ArenaReset4.62 ns<10nsMET
BM_PgSQL_Select_Simple194 ns
BM_PgSQL_Set_Simple92.7 ns
BM_MT_Set_Simple/threads:1119 ns
BM_MT_Set_Simple/threads:2116 ns
BM_MT_Set_Simple/threads:4117 ns
BM_MT_Set_Simple/threads:8123 ns
BM_MT_Select_Simple/threads:1189 ns
BM_MT_Select_Simple/threads:2188 ns
BM_MT_Select_Simple/threads:4197 ns
BM_MT_Select_Simple/threads:8202 ns
BM_MT_Select_Complex/threads:11181 ns
BM_MT_Select_Complex/threads:21130 ns
BM_MT_Select_Complex/threads:41410 ns
BM_MT_Select_Complex/threads:81216 ns
BM_MT_Classify_Begin/threads:128.9 ns
BM_MT_Classify_Begin/threads:230.3 ns
BM_MT_Classify_Begin/threads:430.5 ns
BM_MT_Classify_Begin/threads:832.5 ns
BM_Percentile_Set_Simple942 ns
BM_Percentile_Select_Simple1044 ns
BM_Percentile_Select_Complex1859 ns
BM_Percentile_Classify_Begin890 ns
BM_Expr_SimpleArith3.52 ns
BM_Expr_ComplexCompare13.5 ns
BM_PlanBuild_Simple277 ns
BM_PlanBuild_Complex1196 ns
BM_Pipeline_Simple9479 ns
BM_Op_Filter100053221 ns
BM_Op_Join1000110134 ns
BM_Op_Sort1000287953 ns
BM_Op_Aggregate100098400 ns

Multi-Threaded Scaling (per-thread latency)

Operation1 thread2 threads4 threads8 threads
BM_MT_Set_Simple119ns116ns117ns123ns
BM_MT_Select_Simple189ns188ns197ns202ns
BM_MT_Select_Complex1181ns1130ns1410ns1216ns
BM_MT_Classify_Begin28.9ns30.3ns30.5ns32.5ns

Percentile Latency

Operationavgp50p95p99minmax
BM_Percentile_Set_Simple971.958ns942ns1.192kns1.383kns891ns188.709kns
BM_Percentile_Select_Simple1.08847kns1.012kns1.533kns1.824kns942ns45.023kns
BM_Percentile_Select_Complex1.94169kns1.804kns2.845kns3.446kns1.693kns84.456kns
BM_Percentile_Classify_Begin912.263ns852ns1.182kns1.403kns781ns247.707kns

Corpus Test Results

CorpusDialectQueriesOKPARTIALERROR
PostgreSQL regressionpgsql5555355508 (99.919%)387
MySQL MTRmysql22702268 (99.9119%)20
CockroachDBpgsql1742917422 (99.9598%)70
SQLGlotmysql14501437 (99.1034%)013
sqlparser-rs MySQLmysql424424 (100%)00
sqlparser-rs PostgreSQLpgsql471471 (100%)00
sqlparser-rs Commonmysql15361536 (100%)00
Vitessmysql22912291 (100%)00
TiDBmysql50435037 (99.881%)60
TOTAL86467863945320

Generated by scripts/run_benchmarks.sh