Avatar for the BobTheBuidler user
BobTheBuidler
dictstruct
BlogDocsChangelog

perf: cache struct field set for faster membership/getitem

#87
Comparing
opt-fieldset-fastpath
(
338d534
) with
master
(
7e2c4dc
)
CodSpeed Performance Gauge
-68%
Regression
4
Untouched
29

Benchmarks

33 total
test_getitem
benchmarks/test_dictstruct_benchmarks.py
CodSpeed Performance Gauge
-68%
80.4 ms254.2 ms
test_contains[miss]
benchmarks/test_dictstruct_benchmarks.py
CodSpeed Performance Gauge
-68%
94.2 ms291.8 ms
test_contains[hit]
benchmarks/test_dictstruct_benchmarks.py
CodSpeed Performance Gauge
-60%
129.9 ms327.8 ms
test_getitem
benchmarks/test_lazydictstruct_benchmarks.py
CodSpeed Performance Gauge
-51%
176.3 ms359.1 ms
test_contains[hit]
benchmarks/test_lazydictstruct_benchmarks.py
CodSpeed Performance Gauge
+1%
260.9 ms257.3 ms
test_attribute_access[int]
benchmarks/test_lazydictstruct_benchmarks.py
CodSpeed Performance Gauge
+1%
155.9 ms154 ms
test_get[hit]
benchmarks/test_lazydictstruct_benchmarks.py
CodSpeed Performance Gauge
+1%
173.9 ms172.2 ms
test_values
benchmarks/test_lazydictstruct_benchmarks.py
CodSpeed Performance Gauge
+1%
1.3 s1.3 s
test_items
benchmarks/test_lazydictstruct_benchmarks.py
CodSpeed Performance Gauge
+1%
1.3 s1.3 s
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_len
benchmarks/test_lazydictstruct_benchmarks.py
CodSpeed Performance Gauge
0%
476.4 ms475.5 ms
test_get[miss]
benchmarks/test_lazydictstruct_benchmarks.py
CodSpeed Performance Gauge
0%
221.2 ms220.8 ms
test_keys[small]
benchmarks/test_dictstruct_benchmarks.py
CodSpeed Performance Gauge
0%
390.5 ms389.9 ms
test_iter
benchmarks/test_lazydictstruct_benchmarks.py
CodSpeed Performance Gauge
0%
449.4 ms448.9 ms
test_items[large]
benchmarks/test_dictstruct_benchmarks.py
CodSpeed Performance Gauge
0%
633.6 ms633 ms
test_attribute_access[str]
benchmarks/test_lazydictstruct_benchmarks.py
CodSpeed Performance Gauge
0%
162.1 ms161.9 ms
test_keys[large]
benchmarks/test_dictstruct_benchmarks.py
CodSpeed Performance Gauge
0%
684.5 ms683.9 ms
test_iter[large]
benchmarks/test_dictstruct_benchmarks.py
CodSpeed Performance Gauge
0%
520.3 ms519.9 ms
test_contains[miss]
benchmarks/test_lazydictstruct_benchmarks.py
CodSpeed Performance Gauge
0%
121.9 ms121.8 ms
test_len[large]
benchmarks/test_dictstruct_benchmarks.py
CodSpeed Performance Gauge
0%
575.9 ms575.9 ms
test_values[small]
benchmarks/test_dictstruct_benchmarks.py
CodSpeed Performance Gauge
0%
327.6 ms327.6 ms
test_setitem
benchmarks/test_dictstruct_benchmarks.py
CodSpeed Performance Gauge
0%
46.5 ms46.5 ms
test_items[small]
benchmarks/test_dictstruct_benchmarks.py
CodSpeed Performance Gauge
0%
346.6 ms346.6 ms
test_iter[small]
benchmarks/test_dictstruct_benchmarks.py
CodSpeed Performance Gauge
0%
277.8 ms277.8 ms

Commits

Click on a commit to change the comparison range
Base
master
7e2c4dc
-68.39%
Merge branch 'master' into opt-fieldset-fastpath
3b76a54
27 days ago
by BobTheBuidler
0%
Merge branch 'master' into opt-fieldset-fastpath
cc76cff
27 days ago
by BobTheBuidler
0%
Merge branch 'master' into opt-fieldset-fastpath
338d534
27 days ago
by BobTheBuidler
© 2026 CodSpeed Technology
Home Terms Privacy Docs