Commit graph

32 commits

Author SHA1 Message Date
Kevin Turcios
ca198ce5ab fix: update test expectations for multi-round benchmark plugin
- test_trace_multithreaded_benchmark: SELECT DISTINCT collapses all 10
  threaded sorter calls to 1 row (identical metadata), change 10 → 1
- test_trace_benchmark_decorator: accept zero timing when func_time >
  total_time triggers the overflow guard in validate_and_format
2026-04-02 11:18:33 -05:00
Kevin Turcios
74c29b20b1 fix: update tests for multi-round benchmark plugin
The benchmark plugin now runs multiple rounds with calibrated
iterations. Tests need SELECT DISTINCT for row counts and must
extract median_ns from BenchmarkStats before validation.
2026-04-02 07:24:55 -05:00
claude[bot]
887e6384b6 fix: apply consistent conn safety pattern in trace benchmark tests
Initialize conn to None before try blocks and guard finally with
if conn is not None to prevent NameError if sqlite3.connect() raises.

Co-authored-by: Kevin Turcios <KRRT7@users.noreply.github.com>
2026-03-04 07:37:03 +00:00
claude[bot]
59ec38eec4 fix: resolve mypy type error for conn variable in test_trace_benchmarks
Initialize conn as Optional before try block to allow None assignment.

Co-authored-by: Kevin Turcios <undefined@users.noreply.github.com>
2026-03-04 07:15:22 +00:00
Kevin Turcios
17730663ec fix: close SQLite connections in finally blocks for Windows compatibility
Ensures SQLite connections are always closed before file cleanup to
prevent PermissionError on Windows where open handles block file deletion.
2026-03-04 02:12:18 -05:00
misrasaurabh1
198487bf81 format and lint all 2026-01-29 01:39:48 -08:00
Kevin Turcios
328ccb2079 windows shenanigans 2025-09-28 05:49:36 +00:00
Kevin Turcios
be1ae9332b normalize paths and tmp_dir here too 2025-09-28 05:40:20 +00:00
Kevin Turcios
16d21e7464 reinsert 2025-07-29 23:49:22 -07:00
Kevin Turcios
41d314ddbf cleanup benchmark 2025-07-28 16:46:05 -07:00
Kevin Turcios
c6776dc06b cleanup plugin 2025-07-23 17:45:00 -07:00
aseembits93
4e8f2e7f55 cleaning up 2025-05-30 15:06:41 -07:00
aseembits93
c566436aac modify existing test 2025-05-30 15:03:50 -07:00
Alvin Ryanputra
e5ca10fbb6 marked multithreaded trace benchmarks test to be skipped during CI as its flaky with github action machines 2025-04-17 11:11:12 -04:00
Alvin Ryanputra
f14cf010ee skip multithreaded benchmark test if machine is single threaded (fixes flaky github actions test, as sometimes the machines allocated are different) 2025-04-17 10:56:20 -04:00
Alvin Ryanputra
0146d828bc line number test is off by 1 for python versions 39 and 310, removed the check 2025-04-17 10:16:56 -04:00
Alvin Ryanputra
3158f9cc1c end to end test that proves picklepatcher works. example shown is a socket (which is unpickleable) that's used or not used 2025-04-10 21:43:56 -04:00
Alvin Ryanputra
d6ed1c33c4 Support recursive functions, and @benchmark / @pytest.mark.benchmark ways of using benchmark. created tests for all of them 2025-04-09 17:19:20 -07:00
Alvin Ryanputra
972ef4648e benchmark flow is working. changed paths to use module_path instead of file_path for Benchmarkkey 2025-04-09 17:19:18 -07:00
Alvin Ryanputra
b3c83204f8 Use module path instead of file path for benchmarks, improved display to console. 2025-04-09 17:19:13 -07:00
Alvin Ryanputra
75c1be7b11 replay tests are now grouped by benchmark file. each benchmark test file will create one replay test file. 2025-04-09 17:19:12 -07:00
Alvin Ryanputra
e5a8260ac9 reworked matching benchmark key to test results. 2025-04-09 17:19:07 -07:00
Alvin Ryanputra
a82e9f0d49 modified the benchmarking approach. codeflash_trace and codeflash_benchmark_plugins are singleton instances that will both handle writing to disk. enables flushing to disk once a limit is reached. also added various details to the tracer 2025-04-09 17:19:02 -07:00
Alvin Ryanputra
357f5863b4 refactored get_function_benchmark_timings and get_benchmark_timings into BenchmarkDatabaseUtils class 2025-04-09 17:18:56 -07:00
Alvin Ryanputra
baac96451e works with multithreading, added test 2025-04-09 17:18:56 -07:00
Alvin Ryanputra
7601895651 modified paths in test 2025-04-09 17:18:56 -07:00
Alvin Ryanputra
82cb7a9e0e cleanup tests better 2025-04-09 17:18:56 -07:00
Alvin Ryanputra
adffb9d501 replay test functionality working for functions, methods, static methods, class methods, init. basic instrumentation logic for codeflash_trace done. 2025-04-09 17:18:53 -07:00
Alvin Ryanputra
26b2c4fa61 initial replay test version working 2025-04-09 17:18:51 -07:00
Alvin Ryanputra
d6217e8f8e work on new replay_test logic 2025-04-09 17:18:22 -07:00
Alvin Ryanputra
1f3fd4d2db initial attempt for codeflash_trace_decorator 2025-04-09 17:18:22 -07:00
Alvin Ryanputra
965e2c818c initial implementation for tracing benchmarks using a plugin, and projecting speedup 2025-04-09 17:18:08 -07:00