informix-db/tests/benchmarks/baseline.json
Ryan Malloy 495128c679 Phase 21.1: executemany perf - it was the autocommit cliff (2026.05.04.6)
Investigation of the Phase 21 baseline finding that executemany(N) cost
scaled linearly per-row (1.74 ms x N) regardless of batch size.

Root cause: every autocommit=True INSERT forces a server-side
transaction-log flush. Not a wire-protocol bug.

Numbers:
* executemany(1000) autocommit=True: 1.72 s (1.72 ms/row)
* executemany(1000) in single txn:    32 ms (32 us/row)

53x speedup from changing the transaction boundary, not the driver.
Pure protocol overhead is ~32 us/row -> ~31K rows/sec sustained
throughput on a single connection. Comparable to pg8000.

Added test_executemany_1000_rows_in_txn benchmark to make this
visible. Updated README headline numbers and added a "Performance
gotchas" section explaining when autocommit=False matters.

Decision: don't pipeline. The remaining 32 us is already excellent;
the autocommit gotcha is the real user-facing footgun. Docs > code.
If someone reports needing >31K rows/sec single-connection, that
becomes Phase 22.
2026-05-04 17:26:16 -06:00

1256 lines
43 KiB
JSON

{
"machine_info": {
"node": "rpm-bullet",
"processor": "",
"machine": "x86_64",
"python_compiler": "Clang 22.1.1 ",
"python_implementation": "CPython",
"python_implementation_version": "3.13.12",
"python_version": "3.13.12",
"python_build": [
"main",
"Mar 24 2026 22:49:35"
],
"release": "6.19.11-arch1-1",
"system": "Linux",
"cpu": {
"python_version": "3.13.12.final.0 (64 bit)",
"cpuinfo_version": [
9,
0,
0
],
"cpuinfo_version_string": "9.0.0",
"arch": "X86_64",
"bits": 64,
"count": 32,
"arch_string_raw": "x86_64",
"vendor_id_raw": "AuthenticAMD",
"brand_raw": "AMD Ryzen 9 9950X 16-Core Processor",
"hz_advertised_friendly": "5.4323 GHz",
"hz_actual_friendly": "5.4323 GHz",
"hz_advertised": [
5432299000,
0
],
"hz_actual": [
5432299000,
0
],
"model": 68,
"family": 26,
"flags": [
"3dnowprefetch",
"abm",
"adx",
"aes",
"amd_lbr_pmc_freeze",
"amd_lbr_v2",
"aperfmperf",
"apic",
"arat",
"avic",
"avx",
"avx2",
"avx512_bf16",
"avx512_bitalg",
"avx512_vbmi2",
"avx512_vnni",
"avx512_vp2intersect",
"avx512_vpopcntdq",
"avx512bitalg",
"avx512bw",
"avx512cd",
"avx512dq",
"avx512f",
"avx512ifma",
"avx512vbmi",
"avx512vbmi2",
"avx512vl",
"avx512vnni",
"avx512vpopcntdq",
"avx_vnni",
"bmi1",
"bmi2",
"bpext",
"bus_lock_detect",
"cat_l3",
"cdp_l3",
"clflush",
"clflushopt",
"clwb",
"clzero",
"cmov",
"cmp_legacy",
"constant_tsc",
"cpb",
"cppc",
"cpuid",
"cpuid_fault",
"cqm",
"cqm_llc",
"cqm_mbm_local",
"cqm_mbm_total",
"cqm_occup_llc",
"cr8_legacy",
"cx16",
"cx8",
"dbx",
"de",
"decodeassists",
"erms",
"extapic",
"extd_apicid",
"f16c",
"flush_l1d",
"flushbyasid",
"fma",
"fpu",
"fsgsbase",
"fsrm",
"fxsr",
"fxsr_opt",
"gfni",
"ht",
"hw_pstate",
"ibpb",
"ibrs",
"ibrs_enhanced",
"ibs",
"invpcid",
"irperf",
"lahf_lm",
"lbrv",
"lm",
"mba",
"mca",
"mce",
"misalignsse",
"mmx",
"mmxext",
"monitor",
"movbe",
"movdir64b",
"movdiri",
"msr",
"mtrr",
"mwaitx",
"nonstop_tsc",
"nopl",
"npt",
"nrip_save",
"nx",
"ospke",
"osvw",
"osxsave",
"overflow_recov",
"pae",
"pat",
"pausefilter",
"pci_l2i",
"pclmulqdq",
"pdpe1gb",
"perfctr_core",
"perfctr_llc",
"perfctr_nb",
"perfmon_v2",
"pfthreshold",
"pge",
"pku",
"pni",
"popcnt",
"pqe",
"pqm",
"pse",
"pse36",
"rapl",
"rdpid",
"rdpru",
"rdrand",
"rdrnd",
"rdseed",
"rdt_a",
"rdtscp",
"rep_good",
"sep",
"sha",
"sha_ni",
"skinit",
"smap",
"smca",
"smep",
"ssbd",
"sse",
"sse2",
"sse4_1",
"sse4_2",
"sse4a",
"ssse3",
"stibp",
"succor",
"svm",
"svm_lock",
"syscall",
"tce",
"topoext",
"tsc",
"tsc_adjust",
"tsc_scale",
"umip",
"user_shstk",
"v_spec_ctrl",
"v_vmsave_vmload",
"vaes",
"vgif",
"vmcb_clean",
"vme",
"vmmcall",
"vnmi",
"vpclmulqdq",
"wbnoinvd",
"wdt",
"x2avic",
"xgetbv1",
"xsave",
"xsavec",
"xsaveerptr",
"xsaveopt",
"xsaves",
"xtopology"
],
"l3_cache_size": 1048576,
"l2_cache_size": 16777216,
"l1_data_cache_size": 786432,
"l1_instruction_cache_size": 524288,
"l2_cache_line_size": 1024,
"l2_cache_associativity": 8
}
},
"commit_info": {
"id": "90ce035a00ab2776cbccad314af68d245f1e913b",
"time": "2026-05-04T17:21:12-06:00",
"author_time": "2026-05-04T17:21:12-06:00",
"dirty": true,
"project": "python-library",
"branch": "main"
},
"benchmarks": [
{
"group": null,
"name": "test_async_select_one_row",
"fullname": "tests/benchmarks/test_async_perf.py::test_async_select_one_row",
"params": null,
"param": null,
"extra_info": {},
"options": {
"disable_gc": false,
"timer": "perf_counter",
"min_rounds": 5,
"max_time": 1.0,
"min_time": 5e-06,
"warmup": false
},
"stats": {
"min": 0.0001783499028533697,
"max": 0.0037694860948249698,
"mean": 0.0002708047498068165,
"stddev": 0.0001398595253029065,
"rounds": 920,
"median": 0.00024159951135516167,
"iqr": 0.00010358949657529593,
"q1": 0.00020531500922515988,
"q3": 0.0003089045058004558,
"iqr_outliers": 24,
"stddev_outliers": 53,
"outliers": "53;24",
"ld15iqr": 0.0001783499028533697,
"hd15iqr": 0.000472119078040123,
"ops": 3692.697416545937,
"total": 0.24914036982227117,
"iterations": 1
}
},
{
"group": null,
"name": "test_async_concurrent_10_selects",
"fullname": "tests/benchmarks/test_async_perf.py::test_async_concurrent_10_selects",
"params": null,
"param": null,
"extra_info": {},
"options": {
"disable_gc": false,
"timer": "perf_counter",
"min_rounds": 5,
"max_time": 1.0,
"min_time": 5e-06,
"warmup": false
},
"stats": {
"min": 0.0033279670169577003,
"max": 0.009101188974454999,
"mean": 0.004628980516309978,
"stddev": 0.001321010090952204,
"rounds": 51,
"median": 0.004433745052665472,
"iqr": 0.0012122082989662886,
"q1": 0.0037467457295861095,
"q3": 0.004958954028552398,
"iqr_outliers": 4,
"stddev_outliers": 5,
"outliers": "5;4",
"ld15iqr": 0.0033279670169577003,
"hd15iqr": 0.00792649108916521,
"ops": 216.0302892778552,
"total": 0.23607800633180887,
"iterations": 1
}
},
{
"group": null,
"name": "test_decode_int",
"fullname": "tests/benchmarks/test_codec_perf.py::test_decode_int",
"params": null,
"param": null,
"extra_info": {},
"options": {
"disable_gc": false,
"timer": "perf_counter",
"min_rounds": 5,
"max_time": 1.0,
"min_time": 5e-06,
"warmup": false
},
"stats": {
"min": 1.552992034703493e-07,
"max": 9.124004282057285e-07,
"mean": 1.697415664394928e-07,
"stddev": 2.1092413887246777e-08,
"rounds": 46105,
"median": 1.655996311455965e-07,
"iqr": 6.3003972172736995e-09,
"q1": 1.6330042853951454e-07,
"q3": 1.6960082575678824e-07,
"iqr_outliers": 2795,
"stddev_outliers": 1970,
"outliers": "1970;2795",
"ld15iqr": 1.552992034703493e-07,
"hd15iqr": 1.790898386389017e-07,
"ops": 5891308.893726195,
"total": 0.007825934920692817,
"iterations": 100
}
},
{
"group": null,
"name": "test_decode_smallint",
"fullname": "tests/benchmarks/test_codec_perf.py::test_decode_smallint",
"params": null,
"param": null,
"extra_info": {},
"options": {
"disable_gc": false,
"timer": "perf_counter",
"min_rounds": 5,
"max_time": 1.0,
"min_time": 5e-06,
"warmup": false
},
"stats": {
"min": 1.536643443008264e-07,
"max": 2.973666414618492e-06,
"mean": 1.66776047066651e-07,
"stddev": 3.477156332297996e-08,
"rounds": 195311,
"median": 1.6200356185436248e-07,
"iqr": 4.334530482689541e-09,
"q1": 1.6033494224150975e-07,
"q3": 1.646694727241993e-07,
"iqr_outliers": 11999,
"stddev_outliers": 7420,
"outliers": "7420;11999",
"ld15iqr": 1.5399806822339693e-07,
"hd15iqr": 1.7133230964342753e-07,
"ops": 5996064.888145216,
"total": 0.032573196528634676,
"iterations": 30
}
},
{
"group": null,
"name": "test_decode_bigint",
"fullname": "tests/benchmarks/test_codec_perf.py::test_decode_bigint",
"params": null,
"param": null,
"extra_info": {},
"options": {
"disable_gc": false,
"timer": "perf_counter",
"min_rounds": 5,
"max_time": 1.0,
"min_time": 5e-06,
"warmup": false
},
"stats": {
"min": 1.6692166145031268e-07,
"max": 3.5261529354521863e-06,
"mean": 1.8541564986363696e-07,
"stddev": 4.0746058984269045e-08,
"rounds": 199206,
"median": 1.7923034297732207e-07,
"iqr": 3.846183132666796e-09,
"q1": 1.7730949016717764e-07,
"q3": 1.8115567329984444e-07,
"iqr_outliers": 14741,
"stddev_outliers": 8889,
"outliers": "8889;14741",
"ld15iqr": 1.715424542243664e-07,
"hd15iqr": 1.8692718675503363e-07,
"ops": 5393288.003118643,
"total": 0.036935909946735665,
"iterations": 26
}
},
{
"group": null,
"name": "test_decode_float",
"fullname": "tests/benchmarks/test_codec_perf.py::test_decode_float",
"params": null,
"param": null,
"extra_info": {},
"options": {
"disable_gc": false,
"timer": "perf_counter",
"min_rounds": 5,
"max_time": 1.0,
"min_time": 5e-06,
"warmup": false
},
"stats": {
"min": 1.5533296391367912e-07,
"max": 5.582331990202268e-06,
"mean": 1.7290553887433694e-07,
"stddev": 4.3992245312702247e-08,
"rounds": 196077,
"median": 1.6533304005861283e-07,
"iqr": 4.6643738945325145e-09,
"q1": 1.6366830095648767e-07,
"q3": 1.6833267485102018e-07,
"iqr_outliers": 14681,
"stddev_outliers": 10089,
"outliers": "10089;14681",
"ld15iqr": 1.5699770301580428e-07,
"hd15iqr": 1.7533311620354651e-07,
"ops": 5783504.718878745,
"total": 0.03390279934586336,
"iterations": 30
}
},
{
"group": null,
"name": "test_decode_date",
"fullname": "tests/benchmarks/test_codec_perf.py::test_decode_date",
"params": null,
"param": null,
"extra_info": {},
"options": {
"disable_gc": false,
"timer": "perf_counter",
"min_rounds": 5,
"max_time": 1.0,
"min_time": 5e-06,
"warmup": false
},
"stats": {
"min": 4.4994521886110306e-07,
"max": 5.99490012973547e-05,
"mean": 4.997973695114113e-07,
"stddev": 1.9661595195578896e-07,
"rounds": 149925,
"median": 4.899920895695686e-07,
"iqr": 3.9814040064811707e-08,
"q1": 4.700850695371628e-07,
"q3": 5.098991096019745e-07,
"iqr_outliers": 4099,
"stddev_outliers": 1535,
"outliers": "1535;4099",
"ld15iqr": 4.4994521886110306e-07,
"hd15iqr": 5.699694156646729e-07,
"ops": 2000810.850560445,
"total": 0.07493212062399834,
"iterations": 1
}
},
{
"group": null,
"name": "test_decode_varchar_short",
"fullname": "tests/benchmarks/test_codec_perf.py::test_decode_varchar_short",
"params": null,
"param": null,
"extra_info": {},
"options": {
"disable_gc": false,
"timer": "perf_counter",
"min_rounds": 5,
"max_time": 1.0,
"min_time": 5e-06,
"warmup": false
},
"stats": {
"min": 1.567738851712596e-07,
"max": 1.403064497055546e-05,
"mean": 1.6506310570564836e-07,
"stddev": 3.4999582115629985e-08,
"rounds": 196082,
"median": 1.6322554720024908e-07,
"iqr": 1.937751808474152e-09,
"q1": 1.6225667129601201e-07,
"q3": 1.6419442310448617e-07,
"iqr_outliers": 11504,
"stddev_outliers": 3249,
"outliers": "3249;11504",
"ld15iqr": 1.5935379891626296e-07,
"hd15iqr": 1.6738645612232146e-07,
"ops": 6058289.014525556,
"total": 0.03236590389297494,
"iterations": 31
}
},
{
"group": null,
"name": "test_decode_varchar_long",
"fullname": "tests/benchmarks/test_codec_perf.py::test_decode_varchar_long",
"params": null,
"param": null,
"extra_info": {},
"options": {
"disable_gc": false,
"timer": "perf_counter",
"min_rounds": 5,
"max_time": 1.0,
"min_time": 5e-06,
"warmup": false
},
"stats": {
"min": 1.7300015315413474e-07,
"max": 5.746900569647551e-07,
"mean": 1.8009804110252565e-07,
"stddev": 6.7639479585228705e-09,
"rounds": 55618,
"median": 1.792993862181902e-07,
"iqr": 2.0000152289867475e-09,
"q1": 1.7829937860369681e-07,
"q3": 1.8029939383268356e-07,
"iqr_outliers": 2142,
"stddev_outliers": 1315,
"outliers": "1315;2142",
"ld15iqr": 1.752993557602167e-07,
"hd15iqr": 1.8330058082938194e-07,
"ops": 5552531.242861899,
"total": 0.010016692850040271,
"iterations": 100
}
},
{
"group": null,
"name": "test_decode_varchar_utf8",
"fullname": "tests/benchmarks/test_codec_perf.py::test_decode_varchar_utf8",
"params": null,
"param": null,
"extra_info": {},
"options": {
"disable_gc": false,
"timer": "perf_counter",
"min_rounds": 5,
"max_time": 1.0,
"min_time": 5e-06,
"warmup": false
},
"stats": {
"min": 1.974985934793949e-07,
"max": 1.2000833521597087e-05,
"mean": 2.105730723877986e-07,
"stddev": 3.294005306439554e-08,
"rounds": 193799,
"median": 2.075006098796924e-07,
"iqr": 4.588703935345023e-09,
"q1": 2.0583199026683965e-07,
"q3": 2.1042069420218468e-07,
"iqr_outliers": 11045,
"stddev_outliers": 3374,
"outliers": "3374;11045",
"ld15iqr": 1.991623624538382e-07,
"hd15iqr": 2.1745897053430477e-07,
"ops": 4748945.288495225,
"total": 0.04080885085568298,
"iterations": 24
}
},
{
"group": null,
"name": "test_encode_int",
"fullname": "tests/benchmarks/test_codec_perf.py::test_encode_int",
"params": null,
"param": null,
"extra_info": {},
"options": {
"disable_gc": false,
"timer": "perf_counter",
"min_rounds": 5,
"max_time": 1.0,
"min_time": 5e-06,
"warmup": false
},
"stats": {
"min": 9.495008271187544e-08,
"max": 8.562498260289431e-07,
"mean": 9.819238487790007e-08,
"stddev": 8.207935436892014e-09,
"rounds": 51335,
"median": 9.700015652924776e-08,
"iqr": 8.993083611130741e-10,
"q1": 9.660026989877224e-08,
"q3": 9.749957825988531e-08,
"iqr_outliers": 2476,
"stddev_outliers": 1709,
"outliers": "1709;2476",
"ld15iqr": 9.529991075396538e-08,
"hd15iqr": 9.884999599307776e-08,
"ops": 10184089.135257041,
"total": 0.005040706077707,
"iterations": 200
}
},
{
"group": null,
"name": "test_encode_str_ascii",
"fullname": "tests/benchmarks/test_codec_perf.py::test_encode_str_ascii",
"params": null,
"param": null,
"extra_info": {},
"options": {
"disable_gc": false,
"timer": "perf_counter",
"min_rounds": 5,
"max_time": 1.0,
"min_time": 5e-06,
"warmup": false
},
"stats": {
"min": 4.200264811515808e-07,
"max": 6.139976903796196e-06,
"mean": 4.615799622473153e-07,
"stddev": 8.453654720518955e-08,
"rounds": 126742,
"median": 4.5995693653821945e-07,
"iqr": 1.0128132998943329e-08,
"q1": 4.4994521886110306e-07,
"q3": 4.600733518600464e-07,
"iqr_outliers": 8787,
"stddev_outliers": 2251,
"outliers": "2251;8787",
"ld15iqr": 4.390021786093712e-07,
"hd15iqr": 4.789326339960098e-07,
"ops": 2166471.861411086,
"total": 0.05850156757514924,
"iterations": 1
}
},
{
"group": null,
"name": "test_encode_str_utf8",
"fullname": "tests/benchmarks/test_codec_perf.py::test_encode_str_utf8",
"params": null,
"param": null,
"extra_info": {},
"options": {
"disable_gc": false,
"timer": "perf_counter",
"min_rounds": 5,
"max_time": 1.0,
"min_time": 5e-06,
"warmup": false
},
"stats": {
"min": 3.7949648685753344e-07,
"max": 4.142004763707519e-06,
"mean": 4.0244505908328793e-07,
"stddev": 3.517347358384737e-08,
"rounds": 119047,
"median": 3.964989446103573e-07,
"iqr": 8.99890437722203e-09,
"q1": 3.925000783056021e-07,
"q3": 4.014989826828241e-07,
"iqr_outliers": 4942,
"stddev_outliers": 3931,
"outliers": "3931;4942",
"ld15iqr": 3.7949648685753344e-07,
"hd15iqr": 4.1499733924865725e-07,
"ops": 2484811.224364032,
"total": 0.04790987694868818,
"iterations": 20
}
},
{
"group": null,
"name": "test_encode_float",
"fullname": "tests/benchmarks/test_codec_perf.py::test_encode_float",
"params": null,
"param": null,
"extra_info": {},
"options": {
"disable_gc": false,
"timer": "perf_counter",
"min_rounds": 5,
"max_time": 1.0,
"min_time": 5e-06,
"warmup": false
},
"stats": {
"min": 1.2991949915885925e-07,
"max": 4.639965482056141e-06,
"mean": 1.5344735326122993e-07,
"stddev": 3.9628501777315876e-08,
"rounds": 199206,
"median": 1.5005934983491898e-07,
"iqr": 1.1641532182693481e-10,
"q1": 1.4994293451309204e-07,
"q3": 1.5005934983491898e-07,
"iqr_outliers": 78209,
"stddev_outliers": 3670,
"outliers": "3670;78209",
"ld15iqr": 1.4994293451309204e-07,
"hd15iqr": 1.5890691429376602e-07,
"ops": 6516893.115110252,
"total": 0.03056763345375657,
"iterations": 1
}
},
{
"group": null,
"name": "test_encode_date",
"fullname": "tests/benchmarks/test_codec_perf.py::test_encode_date",
"params": null,
"param": null,
"extra_info": {},
"options": {
"disable_gc": false,
"timer": "perf_counter",
"min_rounds": 5,
"max_time": 1.0,
"min_time": 5e-06,
"warmup": false
},
"stats": {
"min": 2.200249582529068e-07,
"max": 1.8549966625869274e-05,
"mean": 2.495290070327044e-07,
"stddev": 6.700914428761149e-08,
"rounds": 175750,
"median": 2.4994369596242905e-07,
"iqr": 1.0011717677116394e-08,
"q1": 2.400483936071396e-07,
"q3": 2.50060111284256e-07,
"iqr_outliers": 10436,
"stddev_outliers": 1755,
"outliers": "1755;10436",
"ld15iqr": 2.2992026060819626e-07,
"hd15iqr": 2.689193934202194e-07,
"ops": 4007550.1116747344,
"total": 0.043854722985997796,
"iterations": 1
}
},
{
"group": null,
"name": "test_encode_datetime",
"fullname": "tests/benchmarks/test_codec_perf.py::test_encode_datetime",
"params": null,
"param": null,
"extra_info": {},
"options": {
"disable_gc": false,
"timer": "perf_counter",
"min_rounds": 5,
"max_time": 1.0,
"min_time": 5e-06,
"warmup": false
},
"stats": {
"min": 1.8599675968289375e-06,
"max": 1.343991607427597e-05,
"mean": 1.9514378415340784e-06,
"stddev": 2.2459184590519486e-07,
"rounds": 61501,
"median": 1.920037902891636e-06,
"iqr": 2.991873770952225e-08,
"q1": 1.9100261852145195e-06,
"q3": 1.9399449229240417e-06,
"iqr_outliers": 2196,
"stddev_outliers": 1641,
"outliers": "1641;2196",
"ld15iqr": 1.8689315766096115e-06,
"hd15iqr": 1.9889557734131813e-06,
"ops": 512442.6608504592,
"total": 0.12001537869218737,
"iterations": 1
}
},
{
"group": null,
"name": "test_parse_tuple_5cols_iso8859",
"fullname": "tests/benchmarks/test_codec_perf.py::test_parse_tuple_5cols_iso8859",
"params": null,
"param": null,
"extra_info": {},
"options": {
"disable_gc": false,
"timer": "perf_counter",
"min_rounds": 5,
"max_time": 1.0,
"min_time": 5e-06,
"warmup": false
},
"stats": {
"min": 2.620043233036995e-06,
"max": 1.5789992175996304e-05,
"mean": 2.7960869296309257e-06,
"stddev": 2.9548134292988817e-07,
"rounds": 39124,
"median": 2.7599744498729706e-06,
"iqr": 5.995389074087143e-08,
"q1": 2.7300557121634483e-06,
"q3": 2.7900096029043198e-06,
"iqr_outliers": 1293,
"stddev_outliers": 1018,
"outliers": "1018;1293",
"ld15iqr": 2.649961970746517e-06,
"hd15iqr": 2.8799986466765404e-06,
"ops": 357642.671764857,
"total": 0.10939410503488034,
"iterations": 1
}
},
{
"group": null,
"name": "test_parse_tuple_5cols_utf8",
"fullname": "tests/benchmarks/test_codec_perf.py::test_parse_tuple_5cols_utf8",
"params": null,
"param": null,
"extra_info": {},
"options": {
"disable_gc": false,
"timer": "perf_counter",
"min_rounds": 5,
"max_time": 1.0,
"min_time": 5e-06,
"warmup": false
},
"stats": {
"min": 2.620043233036995e-06,
"max": 2.8469949029386044e-05,
"mean": 2.7905499414258814e-06,
"stddev": 3.3678126483548525e-07,
"rounds": 62422,
"median": 2.749962732195854e-06,
"iqr": 5.902256816625595e-08,
"q1": 2.720043994486332e-06,
"q3": 2.779066562652588e-06,
"iqr_outliers": 2264,
"stddev_outliers": 1699,
"outliers": "1699;2264",
"ld15iqr": 2.6399502530694008e-06,
"hd15iqr": 2.869986928999424e-06,
"ops": 358352.3036642133,
"total": 0.17419170844368637,
"iterations": 1
}
},
{
"group": null,
"name": "test_insert_single_row",
"fullname": "tests/benchmarks/test_insert_perf.py::test_insert_single_row",
"params": null,
"param": null,
"extra_info": {},
"options": {
"disable_gc": false,
"timer": "perf_counter",
"min_rounds": 5,
"max_time": 1.0,
"min_time": 5e-06,
"warmup": false
},
"stats": {
"min": 0.001582358032464981,
"max": 0.0023439470678567886,
"mean": 0.0017878168699458057,
"stddev": 9.797651240016688e-05,
"rounds": 243,
"median": 0.0017855080077424645,
"iqr": 0.00012171000707894564,
"q1": 0.0017153230146504939,
"q3": 0.0018370330217294395,
"iqr_outliers": 4,
"stddev_outliers": 70,
"outliers": "70;4",
"ld15iqr": 0.001582358032464981,
"hd15iqr": 0.0020228370558470488,
"ops": 559.3414050457601,
"total": 0.4344394993968308,
"iterations": 1
}
},
{
"group": null,
"name": "test_executemany_100_rows",
"fullname": "tests/benchmarks/test_insert_perf.py::test_executemany_100_rows",
"params": null,
"param": null,
"extra_info": {},
"options": {
"disable_gc": false,
"timer": "perf_counter",
"min_rounds": 5,
"max_time": 1.0,
"min_time": 5e-06,
"warmup": false
},
"stats": {
"min": 0.16832035908009857,
"max": 0.1755698589840904,
"mean": 0.17103146946257247,
"stddev": 0.0026583298272997696,
"rounds": 7,
"median": 0.17046913609374315,
"iqr": 0.003929688478820026,
"q1": 0.16898605454480276,
"q3": 0.17291574302362278,
"iqr_outliers": 0,
"stddev_outliers": 3,
"outliers": "3;0",
"ld15iqr": 0.16832035908009857,
"hd15iqr": 0.1755698589840904,
"ops": 5.846877204190976,
"total": 1.1972202862380072,
"iterations": 1
}
},
{
"group": null,
"name": "test_executemany_1000_rows",
"fullname": "tests/benchmarks/test_insert_perf.py::test_executemany_1000_rows",
"params": null,
"param": null,
"extra_info": {},
"options": {
"disable_gc": false,
"timer": "perf_counter",
"min_rounds": 5,
"max_time": 1.0,
"min_time": 5e-06,
"warmup": false
},
"stats": {
"min": 1.7241007370175794,
"max": 1.8025506250560284,
"mean": 1.770115462364629,
"stddev": 0.040949964893151496,
"rounds": 3,
"median": 1.783695025020279,
"iqr": 0.05883741602883674,
"q1": 1.7389993090182543,
"q3": 1.797836725047091,
"iqr_outliers": 0,
"stddev_outliers": 1,
"outliers": "1;0",
"ld15iqr": 1.7241007370175794,
"hd15iqr": 1.8025506250560284,
"ops": 0.5649348990286422,
"total": 5.310346387093887,
"iterations": 1
}
},
{
"group": null,
"name": "test_executemany_1000_rows_in_txn",
"fullname": "tests/benchmarks/test_insert_perf.py::test_executemany_1000_rows_in_txn",
"params": null,
"param": null,
"extra_info": {},
"options": {
"disable_gc": false,
"timer": "perf_counter",
"min_rounds": 5,
"max_time": 1.0,
"min_time": 5e-06,
"warmup": false
},
"stats": {
"min": 0.029487275052815676,
"max": 0.031187782995402813,
"mean": 0.03018106399880101,
"stddev": 0.0008923988615717756,
"rounds": 3,
"median": 0.02986813394818455,
"iqr": 0.001275380956940353,
"q1": 0.029582489776657894,
"q3": 0.030857870733598247,
"iqr_outliers": 0,
"stddev_outliers": 1,
"outliers": "1;0",
"ld15iqr": 0.029487275052815676,
"hd15iqr": 0.031187782995402813,
"ops": 33.133358056552495,
"total": 0.09054319199640304,
"iterations": 1
}
},
{
"group": null,
"name": "test_cold_connect_disconnect",
"fullname": "tests/benchmarks/test_pool_perf.py::test_cold_connect_disconnect",
"params": null,
"param": null,
"extra_info": {},
"options": {
"disable_gc": false,
"timer": "perf_counter",
"min_rounds": 5,
"max_time": 1.0,
"min_time": 5e-06,
"warmup": false
},
"stats": {
"min": 0.010703847045078874,
"max": 0.010994946002028883,
"mean": 0.010857723001390696,
"stddev": 0.00012220593763959052,
"rounds": 5,
"median": 0.01081350794993341,
"iqr": 0.000195654749404639,
"q1": 0.010780639509903267,
"q3": 0.010976294259307906,
"iqr_outliers": 0,
"stddev_outliers": 2,
"outliers": "2;0",
"ld15iqr": 0.010703847045078874,
"hd15iqr": 0.010994946002028883,
"ops": 92.10034183704231,
"total": 0.05428861500695348,
"iterations": 1
}
},
{
"group": null,
"name": "test_pool_acquire_release",
"fullname": "tests/benchmarks/test_pool_perf.py::test_pool_acquire_release",
"params": null,
"param": null,
"extra_info": {},
"options": {
"disable_gc": false,
"timer": "perf_counter",
"min_rounds": 5,
"max_time": 1.0,
"min_time": 5e-06,
"warmup": false
},
"stats": {
"min": 0.00010902993381023407,
"max": 0.002848736010491848,
"mean": 0.00021822520665460928,
"stddev": 0.0001375125435240596,
"rounds": 2183,
"median": 0.00018530897796154022,
"iqr": 9.743723785504699e-05,
"q1": 0.00014857493806630373,
"q3": 0.0002460121759213507,
"iqr_outliers": 111,
"stddev_outliers": 165,
"outliers": "165;111",
"ld15iqr": 0.00010902993381023407,
"hd15iqr": 0.00039244897197932005,
"ops": 4582.422055316121,
"total": 0.4763856261270121,
"iterations": 1
}
},
{
"group": null,
"name": "test_pool_acquire_query_release",
"fullname": "tests/benchmarks/test_pool_perf.py::test_pool_acquire_query_release",
"params": null,
"param": null,
"extra_info": {},
"options": {
"disable_gc": false,
"timer": "perf_counter",
"min_rounds": 5,
"max_time": 1.0,
"min_time": 5e-06,
"warmup": false
},
"stats": {
"min": 0.00021435902453958988,
"max": 0.0026991659542545676,
"mean": 0.00034451136280134787,
"stddev": 0.0001381192549398773,
"rounds": 1734,
"median": 0.000307839538436383,
"iqr": 0.0001273100497201085,
"q1": 0.0002589399227872491,
"q3": 0.0003862499725073576,
"iqr_outliers": 81,
"stddev_outliers": 186,
"outliers": "186;81",
"ld15iqr": 0.00021435902453958988,
"hd15iqr": 0.0005773489829152822,
"ops": 2902.661879911984,
"total": 0.5973827030975372,
"iterations": 1
}
},
{
"group": null,
"name": "test_select_one_row",
"fullname": "tests/benchmarks/test_select_perf.py::test_select_one_row",
"params": null,
"param": null,
"extra_info": {},
"options": {
"disable_gc": false,
"timer": "perf_counter",
"min_rounds": 5,
"max_time": 1.0,
"min_time": 5e-06,
"warmup": false
},
"stats": {
"min": 0.00010571896564215422,
"max": 0.0014337979955598712,
"mean": 0.00016123567918431363,
"stddev": 6.081706925207678e-05,
"rounds": 3602,
"median": 0.00014233950059860945,
"iqr": 6.208906415849924e-05,
"q1": 0.0001211799681186676,
"q3": 0.00018326903227716684,
"iqr_outliers": 140,
"stddev_outliers": 436,
"outliers": "436;140",
"ld15iqr": 0.00010571896564215422,
"hd15iqr": 0.00027650000993162394,
"ops": 6202.101204019913,
"total": 0.5807709164218977,
"iterations": 1
}
},
{
"group": null,
"name": "test_select_systables_first_10",
"fullname": "tests/benchmarks/test_select_perf.py::test_select_systables_first_10",
"params": null,
"param": null,
"extra_info": {},
"options": {
"disable_gc": false,
"timer": "perf_counter",
"min_rounds": 5,
"max_time": 1.0,
"min_time": 5e-06,
"warmup": false
},
"stats": {
"min": 0.0001464600209146738,
"max": 0.0006670691072940826,
"mean": 0.00020406637762734778,
"stddev": 5.242213281716161e-05,
"rounds": 2919,
"median": 0.00018970994278788567,
"iqr": 6.735578062944114e-05,
"q1": 0.00016244172002188861,
"q3": 0.00022979750065132976,
"iqr_outliers": 85,
"stddev_outliers": 525,
"outliers": "525;85",
"ld15iqr": 0.0001464600209146738,
"hd15iqr": 0.00033088994678109884,
"ops": 4900.366300548209,
"total": 0.5956697562942281,
"iterations": 1
}
},
{
"group": null,
"name": "test_select_bench_table_all",
"fullname": "tests/benchmarks/test_select_perf.py::test_select_bench_table_all",
"params": null,
"param": null,
"extra_info": {},
"options": {
"disable_gc": false,
"timer": "perf_counter",
"min_rounds": 5,
"max_time": 1.0,
"min_time": 5e-06,
"warmup": false
},
"stats": {
"min": 0.0012891979422420263,
"max": 0.002537296968512237,
"mean": 0.0014767767646464644,
"stddev": 0.00015889450439075735,
"rounds": 536,
"median": 0.0014329130062833428,
"iqr": 0.00017965061124414206,
"q1": 0.0013673279318027198,
"q3": 0.0015469785430468619,
"iqr_outliers": 23,
"stddev_outliers": 110,
"outliers": "110;23",
"ld15iqr": 0.0012891979422420263,
"hd15iqr": 0.0018201080383732915,
"ops": 677.1504156482289,
"total": 0.7915523458505049,
"iterations": 1
}
},
{
"group": null,
"name": "test_select_with_param",
"fullname": "tests/benchmarks/test_select_perf.py::test_select_with_param",
"params": null,
"param": null,
"extra_info": {},
"options": {
"disable_gc": false,
"timer": "perf_counter",
"min_rounds": 5,
"max_time": 1.0,
"min_time": 5e-06,
"warmup": false
},
"stats": {
"min": 0.0008895490318536758,
"max": 0.001708118012174964,
"mean": 0.0010690036180604182,
"stddev": 0.00012057836413943589,
"rounds": 729,
"median": 0.001042668940499425,
"iqr": 0.0001435203303117305,
"q1": 0.0009819729311857373,
"q3": 0.0011254932614974678,
"iqr_outliers": 28,
"stddev_outliers": 172,
"outliers": "172;28",
"ld15iqr": 0.0008895490318536758,
"hd15iqr": 0.0013541990192607045,
"ops": 935.4505289835995,
"total": 0.7793036375660449,
"iterations": 1
}
}
],
"datetime": "2026-05-04T23:25:30.942621+00:00",
"version": "5.2.3"
}