Avatar for the PyO3 user
PyO3
pyo3
BlogDocsChangelog

Use portable-atomic for targets which lack 64-bit atomics used to check interpreter ID.

#3619Merged
Comparing
portable-atomic
(
e6457c5
) with
main
(
81ad2e8
)
CodSpeed Performance Gauge
+14%
Improvement
1
Untouched
60
Ignored
17

Benchmarks

78 total
f64_from_pyobject
pyo3-benches/benches/bench_frompyobject.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
+14%
241.7 ns212.5 ns
extract_bigint_big_positive
pyo3-benches/benches/bench_bigint.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
+3%
3.6 µs3.5 µs
extract_bigint_small
pyo3-benches/benches/bench_bigint.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
+3%
2.8 µs2.7 µs
identify_object_type
pyo3-benches/benches/bench_any.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
+3%
16 µs15.5 µs
test_simple_kwargs_py
pytests/tests/test_pyfunctions.py
CodSpeed Performance Gauge
+3%
22.3 µs21.7 µs
test_simple_py
pytests/tests/test_pyfunctions.py
CodSpeed Performance Gauge
+1%
18.3 µs18.1 µs
test_simple_args_kwargs_py
pytests/tests/test_pyfunctions.py
CodSpeed Performance Gauge
+1%
21.2 µs21 µs
extract_bigint_huge_positive
pyo3-benches/benches/bench_bigint.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
+1%
12 µs11.9 µs
extract_bigint_big_negative
pyo3-benches/benches/bench_bigint.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
+1%
3.8 µs3.8 µs
test_simple_args_kwargs_rs
pytests/tests/test_pyfunctions.py
CodSpeed Performance Gauge
+1%
24 µs23.8 µs
test_args_kwargs_rs
pytests/tests/test_pyfunctions.py
CodSpeed Performance Gauge
+1%
16 µs15.9 µs
test_empty_class_init_py
pytests/tests/test_pyclasses.py
CodSpeed Performance Gauge
+1%
17.4 µs17.2 µs
test_none_rs
pytests/tests/test_pyfunctions.py
CodSpeed Performance Gauge
+1%
12 µs12 µs
test_none_py
pytests/tests/test_pyfunctions.py
CodSpeed Performance Gauge
0%
11.8 µs11.7 µs
decimal_via_extract
pyo3-benches/benches/bench_decimal.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
14.8 µs14.7 µs
err_new_restore_and_fetch
pyo3-benches/benches/bench_err.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
7.5 µs7.4 µs
extract_bigint_huge_negative
pyo3-benches/benches/bench_bigint.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
13.3 µs13.2 µs
test_args_kwargs_py
pytests/tests/test_pyfunctions.py
CodSpeed Performance Gauge
0%
20.8 µs20.7 µs
test_empty_class_init
pytests/tests/test_pyclasses.py
CodSpeed Performance Gauge
0%
21.9 µs21.9 µs
test_simple_args_py
pytests/tests/test_pyfunctions.py
CodSpeed Performance Gauge
0%
18 µs18 µs
extract_hashset
pyo3-benches/benches/bench_set.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
22.5 ms22.5 ms
tuple_new
pyo3-benches/benches/bench_tuple.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
6.7 ms6.7 ms
call_method_0
pyo3-benches/benches/bench_call.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
692.6 µs692.6 µs
extract_btreeset
pyo3-benches/benches/bench_set.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
21.2 ms21.2 ms
iter_list
pyo3-benches/benches/bench_list.rs::benches::criterion_benchmark
CodSpeed Performance Gauge
0%
8.7 ms8.7 ms

Commits

Click on a commit to change the comparison range
Base
main
81ad2e8
+13.73%
Use portable-atomic for targets which lack 64-bit atomics used to check interpreter ID.
e6457c5
2 years ago
by adamreichold
© 2026 CodSpeed Technology
Home Terms Privacy Docs