Avatar for the BobTheBuidler user
BobTheBuidler
dictstruct
BlogDocsChangelog

perf: avoid decoding in lazy membership/iteration

#89Merged
Comparing
opt-lazy-raw-map
(
6dfc47b
) with
master
(
7e2c4dc
)
CodSpeed Performance Gauge
×2.2
Improvement
6
Untouched
27

Benchmarks

33 total
test_contains[hit]
benchmarks/test_lazydictstruct_benchmarks.py
CodSpeed Performance Gauge
×2.2
260.9 ms119.2 ms
test_iter
benchmarks/test_lazydictstruct_benchmarks.py
CodSpeed Performance Gauge
+67%
449.4 ms268.7 ms
test_len
benchmarks/test_lazydictstruct_benchmarks.py
CodSpeed Performance Gauge
+59%
476.4 ms298.8 ms
test_contains[miss]
benchmarks/test_lazydictstruct_benchmarks.py
CodSpeed Performance Gauge
+34%
121.9 ms90.8 ms
test_values
benchmarks/test_lazydictstruct_benchmarks.py
CodSpeed Performance Gauge
+14%
1.3 s1.1 s
test_items
benchmarks/test_lazydictstruct_benchmarks.py
CodSpeed Performance Gauge
+13%
1.3 s1.1 s
test_attribute_access[int]
benchmarks/test_lazydictstruct_benchmarks.py
CodSpeed Performance Gauge
+1%
155.9 ms154.6 ms
test_getitem
benchmarks/test_lazydictstruct_benchmarks.py
CodSpeed Performance Gauge
+1%
176.3 ms174.9 ms
test_get[hit]
benchmarks/test_lazydictstruct_benchmarks.py
CodSpeed Performance Gauge
+1%
173.9 ms172.9 ms
test_attribute_access[list]
benchmarks/test_lazydictstruct_benchmarks.py
CodSpeed Performance Gauge
+1%
284 ms282.6 ms
test_get[miss]
benchmarks/test_dictstruct_benchmarks.py
CodSpeed Performance Gauge
0%
222.1 ms221.3 ms
test_values[small]
benchmarks/test_dictstruct_benchmarks.py
CodSpeed Performance Gauge
0%
327.6 ms327.1 ms
test_items[large]
benchmarks/test_dictstruct_benchmarks.py
CodSpeed Performance Gauge
0%
633.6 ms632.7 ms
test_json_decode
benchmarks/test_lazydictstruct_benchmarks.py
CodSpeed Performance Gauge
0%
26.7 ms26.7 ms
test_contains[miss]
benchmarks/test_dictstruct_benchmarks.py
CodSpeed Performance Gauge
0%
94.2 ms94.2 ms
test_getitem
benchmarks/test_dictstruct_benchmarks.py
CodSpeed Performance Gauge
0%
80.4 ms80.4 ms
test_get[hit]
benchmarks/test_dictstruct_benchmarks.py
CodSpeed Performance Gauge
0%
79.5 ms79.5 ms
test_setitem
benchmarks/test_dictstruct_benchmarks.py
CodSpeed Performance Gauge
0%
46.5 ms46.5 ms
test_getattribute
benchmarks/test_dictstruct_benchmarks.py
CodSpeed Performance Gauge
0%
62.1 ms62.1 ms
test_bool
benchmarks/test_dictstruct_benchmarks.py
CodSpeed Performance Gauge
0%
33.5 ms33.5 ms
test_get[miss]
benchmarks/test_lazydictstruct_benchmarks.py
CodSpeed Performance Gauge
0%
221.2 ms221.3 ms
test_iter[large]
benchmarks/test_dictstruct_benchmarks.py
CodSpeed Performance Gauge
0%
520.3 ms520.5 ms
test_keys[large]
benchmarks/test_dictstruct_benchmarks.py
CodSpeed Performance Gauge
0%
684.5 ms684.8 ms
test_items[small]
benchmarks/test_dictstruct_benchmarks.py
CodSpeed Performance Gauge
0%
346.6 ms346.9 ms
test_keys[small]
benchmarks/test_dictstruct_benchmarks.py
CodSpeed Performance Gauge
0%
390.5 ms390.7 ms

Commits

Click on a commit to change the comparison range
Base
master
7e2c4dc
×2.2
Merge branch 'master' into opt-lazy-raw-map
7e71861
3 months ago
by BobTheBuidler
+1.35%
Merge branch 'master' into opt-lazy-raw-map
9a4b1d4
3 months ago
by BobTheBuidler
-0.64%
Rename lazy field map helper to match msgspec naming
7a748c5
3 months ago
by BobTheBuidler
+0.64%
Use dunder-style lazy field map helper
75cfd3d
3 months ago
by BobTheBuidler
0%
Normalize comment punctuation to ASCII
6dfc47b
3 months ago
by BobTheBuidler
© 2026 CodSpeed Technology
Home Terms Privacy Docs