Skip to content

fix: update many effects annotations - #2089

Draft
acl-cqc wants to merge 25 commits into
mainfrom
acl/order_by_effects2
Draft

acl-cqc wants to merge 25 commits into
mainfrom
acl/order_by_effects2

Conversation

@acl-cqc

@acl-cqc acl-cqc commented Jul 24, 2026

Copy link
Copy Markdown
Contributor

will close #1747 but still only one effect (strictly ordered, where's we'll want something more like a multi-reader-single-writer for panic) - just recording the bits pulled out of #2024 to leave that as a pure refactor.

Does fix the optimizer removing panicking array.take though :-) :-)

acl-cqc added 25 commits July 8, 2026 14:48
add abstractproperty CompiledCallableDef.call_effects, some breaks + typeignore
modifier_compiler: grab effects out of FunctionBuilder (via private field)
WIP what LocalCalls are there
add effects= to hugr_op, order QAlloc/QFree - fixes test_array.py::test_take_put
@acl-cqc
acl-cqc changed the base branch from main to acl/order_by_effects July 24, 2026 07:57
@github-actions

Copy link
Copy Markdown
Contributor

🐰 Bencher Report

Projectguppylang
Branchacl/order_by_effects2
TestbedLinux

🚨 2 Alerts

BenchmarkMeasure
Units
ViewBenchmark Result
(Result Δ%)
Upper Boundary
(Limit %)
tests/benchmarks/test_big_array.py::test_big_array_compilehugr_bytes
bytes x 1e3
📈 plot
🚷 threshold
🚨 alert (🔔)
67.70 x 1e3
(+1.94%)Baseline: 66.41 x 1e3
67.07 x 1e3
(100.93%)

tests/benchmarks/test_ctrl_flow.py::test_many_ctrl_flow_compilehugr_bytes
bytes x 1e3
📈 plot
🚷 threshold
🚨 alert (🔔)
29.72 x 1e3
(+3.29%)Baseline: 28.77 x 1e3
29.06 x 1e3
(102.27%)

Click to view all benchmark results
Benchmarkhugr_bytesBenchmark Result
bytes x 1e3
(Result Δ%)
Upper Boundary
bytes x 1e3
(Limit %)
hugr_nodesBenchmark Result
nodes
(Result Δ%)
Upper Boundary
nodes
(Limit %)
tests/benchmarks/test_big_array.py::test_big_array_compile📈 view plot
🚷 view threshold
🚨 view alert (🔔)
67.70 x 1e3
(+1.94%)Baseline: 66.41 x 1e3
67.07 x 1e3
(100.93%)

📈 view plot
🚷 view threshold
4,595.00
(0.00%)Baseline: 4,595.00
4,640.95
(99.01%)
tests/benchmarks/test_ctrl_flow.py::test_many_ctrl_flow_compile📈 view plot
🚷 view threshold
🚨 view alert (🔔)
29.72 x 1e3
(+3.29%)Baseline: 28.77 x 1e3
29.06 x 1e3
(102.27%)

📈 view plot
🚷 view threshold
1,301.00
(0.00%)Baseline: 1,301.00
1,314.01
(99.01%)
tests/benchmarks/test_queue_push_pop.py::test_queue_push_benchmark_compile📈 view plot
🚷 view threshold
7.56 x 1e3
(-3.50%)Baseline: 7.84 x 1e3
7.92 x 1e3
(95.55%)
📈 view plot
🚷 view threshold
303.00
(-2.26%)Baseline: 310.00
313.10
(96.77%)
tests/benchmarks/test_queue_push_pop.py::test_queue_push_pop_benchmark_compile📈 view plot
🚷 view threshold
10.50 x 1e3
(-2.52%)Baseline: 10.77 x 1e3
10.88 x 1e3
(96.52%)
📈 view plot
🚷 view threshold
404.00
(-1.70%)Baseline: 411.00
415.11
(97.32%)
🐰 View full continuous benchmarking report in Bencher

Base automatically changed from acl/order_by_effects to main July 28, 2026 12:10
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Define all known effects, update guppy funcs/@hugr_op's

1 participant