Skip to content

Commit 6e8f8f8

Browse files
committed
Get rid of files
1 parent 634229c commit 6e8f8f8

File tree

1 file changed

+10
-25
lines changed

1 file changed

+10
-25
lines changed

pyperformance/data-files/benchmarks/bm_pickle_opt/run_benchmark.py

Lines changed: 10 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -6,38 +6,23 @@
66
77
"""
88

9-
import tempfile
10-
from pathlib import Path
11-
import pyperf
129
import pickle
1310
import pickletools
11+
import pyperf
1412

1513

16-
def setup(fname, N):
17-
x = {}
18-
for i in range(1, N):
19-
x[i] = f"ii{i:>07}"
20-
21-
with open(fname, "wb") as fh:
22-
pickle.dump(x, fh, protocol=4)
23-
24-
25-
def run(fname):
26-
with open(fname, "rb") as fh:
27-
p = fh.read()
14+
def setup(N: int) -> bytes:
15+
x = {i: f"ii{i:>07}" for i in range(N)}
16+
return pickle.dumps(x, protocol=4)
2817

29-
s = pickletools.optimize(p)
3018

31-
with open(fname.with_suffix(".out"), "wb") as fh:
32-
fh.write(s)
19+
def run(p: bytes) -> None:
20+
pickletools.optimize(p)
3321

3422

3523
if __name__ == "__main__":
3624
runner = pyperf.Runner()
37-
N = 1_000_000
38-
with tempfile.TemporaryDirectory() as tmp:
39-
tmp_path = Path(tmp)
40-
fname = tmp_path / "pickle"
41-
setup(fname, N)
42-
runner.metadata["description"] = "Pickletools optimize"
43-
runner.bench_func("pickle_opt", run, fname)
25+
runner.metadata["description"] = "Pickletools optimize"
26+
N = 100_000
27+
payload = setup(N)
28+
runner.bench_func("pickle_opt", run, payload)

0 commit comments

Comments
 (0)