{
"meta": {
"python": "3.13.12",
"implementation": "CPython",
"platform": "macOS-26.5.2-arm64-arm-64bit-Mach-O",
"processor": "arm",
"cpu_count": 18,
"versions": {
"progressbar2": "4.6.0",
"speedups": "2.3.0",
"tqdm": "4.68.3",
"rich": "15.0.0",
"alive-progress": "3.3.0",
"click": "8.4.1"
},
"n_iter": 1000000,
"iter_repeats": 7,
"n_render": 30000,
"render_repeats": 5,
"import_runs": 9,
"term": "80x24"
},
"scenario_a_default_overhead": {
"baseline_min_s": 0.005573375150561333,
"baseline_median_s": 0.005613917019218206,
"libs": {
"progressbar2[fast]": {
"total_min_s": 0.009218999883159995,
"total_median_s": 0.00934887514449656,
"overhead_ns_per_iter": 3.6456247325986624
},
"progressbar2": {
"total_min_s": 0.03153854189440608,
"total_median_s": 0.032419707858935,
"overhead_ns_per_iter": 25.965166743844748
},
"tqdm": {
"total_min_s": 0.05763970804400742,
"total_median_s": 0.05843504099175334,
"overhead_ns_per_iter": 52.06633289344609
},
"rich": {
"total_min_s": 0.02379308408126235,
"total_median_s": 0.024018916068598628,
"overhead_ns_per_iter": 18.219708930701017
},
"alive-progress": {
"total_min_s": 0.2489139169920236,
"total_median_s": 0.25842712516896427,
"overhead_ns_per_iter": 243.34054184146223
},
"click": {
"total_min_s": 1.8352209581062198,
"total_median_s": 1.8481180840171874,
"overhead_ns_per_iter": 1829.6475829556584
}
}
},
"scenario_b_forced_render": {
"baseline_min_s": 0.00015587499365210533,
"libs": {
"progressbar2": {
"total_min_s": 0.7742712090257555,
"total_median_s": 0.7781639168970287,
"per_update_us": 25.80384446773678
},
"progressbar2-fast": {
"total_min_s": 0.14825395797379315,
"total_median_s": 0.14857316599227488,
"per_update_us": 4.936602766004701
},
"tqdm": {
"total_min_s": 0.3275949589442462,
"total_median_s": 0.3301131250336766,
"per_update_us": 10.91463613168647
},
"rich": {
"total_min_s": 5.049460625043139,
"total_median_s": 5.063134750118479,
"per_update_us": 168.3101583349829
}
},
"excluded": {
"alive-progress": "renders on a background timer thread; no per-update render API",
"click": "self-throttles writes (renders only when the drawn line changes); no force-every-update API"
}
},
"scenario_c_import_time": {
"interpreter_baseline_s": 0.014062916859984398,
"libs": {
"progressbar2": {
"total_min_s": 0.015543833142146468,
"net_ms": 1.4809162821620703
},
"progressbar2[fast]": {
"total_min_s": 0.01548366597853601,
"net_ms": 1.420749118551612
},
"tqdm": {
"total_min_s": 0.03564291703514755,
"net_ms": 21.58000017516315
},
"rich": {
"total_min_s": 0.059682250022888184,
"net_ms": 45.619333162903786
},
"alive-progress": {
"total_min_s": 0.02274266700260341,
"net_ms": 8.679750142619014
},
"click": {
"total_min_s": 0.037099249893799424,
"net_ms": 23.036333033815026
}
}
}
}