Avatar for the ifduyue user
ifduyue
python-xxhash
BlogDocsChangelog

perf: METH_FASTCALL, tp_vectorcall, and related optimizations

#147Merged
Comparing
vectorcall
(
a974b6b
) with
master
(
1585d2b
)
CodSpeed Performance Gauge
0%
Untouched
10
New
24
Skipped
86

Benchmarks

86 total
test_xxh32_digest_512kb
tests/test_benchmark.py
Skipped
523.8 µs*
test_xxh3_128_hexdigest_512kb
tests/test_benchmark.py
Skipped
445 µs*
test_xxh32_digest_10kb
tests/test_benchmark.py
Skipped
94.5 µs*
test_xxh32_hexdigest_1kb
tests/test_benchmark.py
Skipped
87.7 µs*
test_xxh3_128_hexdigest_2mb
tests/test_benchmark.py
Skipped
1.6 ms*
test_xxh3_128_hexdigest_10kb
tests/test_benchmark.py
Skipped
94.6 µs*
test_xxh3_128_streaming_digest_10kb
tests/test_benchmark.py
Skipped
129.9 µs*
test_xxh3_128_hexdigest_1kb
tests/test_benchmark.py
Skipped
88.4 µs*
test_xxh3_128_intdigest_10kb
tests/test_benchmark.py
Skipped
95.7 µs*
test_xxh3_128_digest_2mb
tests/test_benchmark.py
Skipped
1.6 ms*
test_xxh3_128_digest_512kb
tests/test_benchmark.py
Skipped
444.2 µs*
test_xxh32_hexdigest_512kb
tests/test_benchmark.py
Skipped
524.2 µs*
test_xxh32_intdigest_10kb
tests/test_benchmark.py
Skipped
96.1 µs*
test_xxh32_hexdigest_10kb
tests/test_benchmark.py
Skipped
96.8 µs*
test_xxh32_streaming_digest_1kb
tests/test_benchmark.py
Skipped
103.2 µs*
test_xxh32_intdigest_512kb
tests/test_benchmark.py
Skipped
523.8 µs*
test_xxh3_128_streaming_digest_512kb
tests/test_benchmark.py
Skipped
1.7 ms*
test_xxh32_digest_1kb
tests/test_benchmark.py
Skipped
86.9 µs*
test_xxh3_128_streaming_hexdigest_512kb
tests/test_benchmark.py
Skipped
1.7 ms*
test_xxh3_128_intdigest_512kb
tests/test_benchmark.py
Skipped
446.3 µs*
test_xxh3_128_streaming_digest_1kb
tests/test_benchmark.py
Skipped
103.1 µs*
test_xxh3_128_streaming_intdigest_2mb
tests/test_benchmark.py
Skipped
6.6 ms*
test_xxh3_128_streaming_digest_2mb
tests/test_benchmark.py
Skipped
6.6 ms*
test_xxh32_digest_2mb
tests/test_benchmark.py
Skipped
1.9 ms*
test_xxh3_128_streaming_hexdigest_1kb
tests/test_benchmark.py
Skipped
103.4 µs*

Commits

Click on a commit to change the comparison range
Base
master
1585d2b
+0.75%
perf: add tp_vectorcall to all four hash types
1585d2b
3 days ago
by ifduyue
-1.26%
fix: remove unsupported min_rounds from codspeed benchmark markers
f49eaa4
3 days ago
by ifduyue
+0.05%
fix: don't overwrite tp_alloc error with PyErr_NoMemory in vectorcall
da76b27
3 days ago
by ifduyue
-0.02%
fix: release buffer on tp_alloc failure in vectorcall functions
9647f32
3 days ago
by ifduyue
+0.02%
refactor: reuse PYXXH*_do_update helpers in vectorcall functions
cba0f28
3 days ago
by ifduyue
+0.06%
fix: use buf.obj instead of buf.buf for buffer-acquired check
14675ad
3 days ago
by ifduyue
+0.28%
bench: add 2MB throughput benchmarks
a974b6b
3 days ago
by ifduyue
© 2026 CodSpeed Technology
Home Terms Privacy Docs