-
Notifications
You must be signed in to change notification settings - Fork 1
Aod Tracking Analysis #80
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Pull Request Overview
This PR implements AOD (Acousto-Optic Deflector) tracking analysis functionality by adding a new tracking dialect and associated infrastructure. The changes enable system state tracking through quantum operations and provide analysis capabilities for AOD positioning.
Key changes:
- Adds a new
tracking
dialect with system state management operations - Implements AOD analysis framework with lattice-based state tracking
- Refactors TraceInterpreter constructor to use keyword-only architecture specification
- Moves ActionTracer from taskgen to its own module for better separation of concerns
Reviewed Changes
Copilot reviewed 22 out of 22 changed files in this pull request and generated 1 comment.
Show a summary per file
File | Description |
---|---|
src/bloqade/shuttle/dialects/tracking/* | New tracking dialect with types, statements, and AOD analysis |
src/bloqade/shuttle/passes/path2tracking.py | Pass to convert path operations to tracking operations |
src/bloqade/shuttle/analysis/aod/* | AOD analysis framework with lattice-based state tracking |
src/bloqade/shuttle/codegen/taskgen.py | Refactored TraceInterpreter constructor and moved ActionTracer |
src/bloqade/shuttle/dialects/action/trace.py | New dedicated module for ActionTracer |
src/bloqade/shuttle/arch.py | Added AOD tone limits and made arch_spec keyword-only |
src/bloqade/shuttle/dialects/measure/* | Updated to use squin dialect's MeasurementResult |
test/unit/codegen/test_taskgen.py | Updated TraceInterpreter calls to use keyword arguments |
test/codegen/test_taskgen.py | Updated TraceInterpreter calls to use keyword arguments |
Comments suppressed due to low confidence (1)
src/bloqade/shuttle/arch.py:124
- The hash method doesn't include the new max_x_tones and max_y_tones fields, which could lead to incorrect hash behavior when these values differ between instances.
def __hash__(self):
return hash(
(
self.layout,
frozenset(self.float_constants.items()),
frozenset(self.int_constants.items()),
)
)
Tip: Customize your code reviews with copilot-instructions.md. Create the file or learn how to get started.
|
||
# path = _interp.get_const_value(Path, stmt.path) | ||
# for action in path.path: | ||
# match |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Incomplete match statement syntax. This line ends abruptly and will cause a SyntaxError.
# match | |
# match action: | |
# # TODO: implement cases for action | |
# pass |
Copilot uses AI. Check for mistakes.
|
Codecov Report❌ Patch coverage is 📢 Thoughts on this report? Let us know! |
☂️ Python Coverage
Overall Coverage
New Files
Modified Files
|
No description provided.