1ndahous3
0f7c1843a4
Fix benchmark execution and library dependency reports ( #9264 )
...
* Fix benchmark execution and library dependency reports
Assisted-by: Codex:GPT-6
* Clarify relative benchmark interpreter paths
Assisted-by: Codex:GPT-6
2026-10-21 11:58:17 +09:00
1ndahous3
89bc9d99d9
Exclude setup cleanup from microbenchmark measurements ( #9244 )
...
Assisted-by: Codex:GPT-6
2026-10-20 19:57:06 +09:00
codspeed[bot] and CodSpeed Bot
ba54cce23a
Pin the hash seed in the microbenchmark harness ( #9126 )
...
Settings::default() leaves hash_seed = None, so every benchmark process
draws a random str hash secret. That changes globals-dict probe lengths
between runs and makes dict/loop/string microbenchmarks swing by 10-17%
with no code change. Use a fixed seed so results only move when the
code does.
Co-authored-by: CodSpeed Bot <no-reply@codspeed.io >
2026-10-15 10:28:43 +09:00
1ndahous3
3af5f8a153
Run benchmark workloads with consistent script namespaces ( #9027 )
...
Assisted-by: Codex:gpt-6
2026-10-10 09:25:57 +09:00
Joshua Megnauth
86c7fa20c4
Fix missing workspace lints & fix lints ( #8781 )
...
Some of the workspace packages were missing the `[lints]` table. I
enabled the lints then fixed the resulting errors.
2026-09-24 07:49:50 +09:00
codspeed-hq[bot] and CodSpeed Bot
062bd72c60
Add CodSpeed continuous benchmarking ( #8613 )
...
Alias criterion to codspeed-criterion-compat so the existing benchmark suites can be measured by CodSpeed with CPU simulation on every pull request, and add the workflow running them.
Co-authored-by: CodSpeed Bot <no-reply@codspeed.io >
2026-08-30 15:18:33 +09:00
Shahar Naveh
7da696661b
Reduce number of string clones when compiling python source code ( #8103 )
2026-06-15 11:20:48 +09:00
Jeong, YunWon
1863b9c788
Lazy locals dict for NEWLOCALS frames ( #7307 )
...
Defer locals dict allocation for function frames until first access.
Most function frames only use fastlocals and never touch the locals
dict, so this skips one dict heap allocation per function call.
Also remove a redundant code.clone() in invoke_with_locals.
Func call ~23% faster, method call ~15% faster in benchmarks.
2026-03-03 09:17:17 +09:00
Jeong YunWon
20376451eb
Implement Py_mod_create slot support in multi-phase init
2026-01-22 11:21:42 +09:00
Jeong YunWon
bc02b2318c
module_exec
2026-01-21 22:39:40 +09:00
Jeong, YunWon
c71c78c1a0
Upgrade pyo3 ( #6389 )
2025-12-10 10:29:20 +09:00
Shahar Naveh
141ed72693
Dependencies cleanup ( #6151 )
...
* Update deps
* Remove some unused deps
* Update lockfile
2025-09-17 09:10:35 +09:00
Ashwin Naren
a7ad848270
Rust dependency updates ( #5651 )
2025-04-15 08:50:29 +09:00
Ashwin Naren
b81ae9b954
More cspell fixes ( #5670 )
2025-04-11 09:37:20 +09:00
Ashwin Naren
b870b0e1b5
2024 edition formatting
...
Signed-off-by: Ashwin Naren <arihant2math@gmail.com >
2025-02-26 11:48:22 -08:00
Noa
37dc28a69d
Update deps ( #5417 )
...
* Upgrade nix
* Update deps
* Upgrade pyo3, winreg
* Fix errors from upgrading
2024-09-27 13:11:00 +09:00
Jeong YunWon
24f57dde2f
Align Settings to PyConfig
2024-04-30 23:18:14 +09:00
Daniel Chiquito
ea1f72e92d
Replace rust-cpython with pyo3 in benches
...
Update the actual benchmark harnesses.
Because the internal APIs previously used are no longer available, I
opted to use `compile` and `exec` from within the CPython context to
compile and execute code. There's probably more overhead to that than
the internal API had, but that overhead should be consistent per
benchmark.
If anyone cares about hyperoptimizing benchmarks then they can optimize
the harness as well.
2024-02-09 16:12:47 -05:00
Jim Fasarakis-Hilliard
06c6244599
Fix failures in the cron ci. ( #5002 )
2023-06-11 14:23:17 +03:00
Jeong YunWon
d94f638784
Fix nightly clippy warnings
2022-10-16 02:38:50 +09:00
Noa
33e848e32e
Fix benches
2022-08-18 20:52:11 -05:00
Jeong Yunwon
9b2a9d2377
TypeZoo uses &'static Py<PyType>
2022-05-27 10:35:01 +09:00
Jeong Yunwon
6fd5094c05
Remove Interpreter::default() not to trap users init without stdlib
2022-04-30 05:09:33 +09:00
Jeong Yunwon
ab7d921772
PySettings is not a python object
2022-04-23 07:56:20 +09:00
Jeong Yunwon
c4b80b3a24
IntoObject::into_object() and PyValue::into_pyobject(vm)
2022-04-19 00:38:18 +09:00
Jeong Yunwon
6357a1acbe
clean up imports and useless allow attributes
2022-04-15 23:58:20 +09:00
Kangzhi Shi
9a2eef6fab
fix compile
2021-11-27 13:49:05 +02:00
Padraic Fanning
a50b91bb0e
Make benchmark work with act, and fix import
...
This doesn't remedy a certain benchmark's possible memory consumption.
2021-10-24 01:47:12 -04:00
jfh
6ce591d90c
Use as_object in benchmark locals.
2021-10-19 16:50:27 +03:00
Jeong YunWon
a42d547a3f
new_{utf8_str, ascii_literal} -> new_str again
2021-10-11 21:28:14 +09:00
Jeong YunWon
741cfea565
vm.ctx.new_int returns PyInt
2021-10-11 01:05:38 +09:00
Jeong YunWon
44f7bc468a
vm::utils::ascii! -> common::ascii!
2021-09-28 15:47:54 +09:00
Jeong YunWon
5fab0771ae
expose ascii! macro as pub
2021-09-26 12:27:03 +09:00
Jeong YunWon
795738d32b
ascii! macro
2021-09-21 18:14:42 +09:00
Jeong YunWon
7395959f5f
Fix PyStr operations to be safe
2021-09-21 00:32:26 +09:00
Jeong YunWon
48dc5c96b6
PyStrKind
2021-09-16 03:35:44 +09:00
Noah
99104faaf7
Re-export pyobject::* from the root of the crate
2021-05-20 10:24:07 -05:00
Noah
db6fa17ffe
Don't recompile CPython microbenchmarks every time
2021-04-05 09:49:16 -05:00
Noah
3c9bcf3a5e
Don't recompile cpython code at each run
2021-03-21 21:23:54 -05:00
Noah
66ae84981b
Fix cpython microbenchmarks failing
2021-03-21 20:43:44 -05:00
Tom Forbes
7818fd2083
Fix micro benchmarks
2020-12-13 20:36:11 +00:00
Tom Forbes
dde8af14f4
Add microbenchmarks
2020-12-13 17:06:21 +00:00