-
Notifications
You must be signed in to change notification settings - Fork 143
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
Partial implementation of virtual ports for PyProcModels #187
Conversation
Signed-off-by: bamsumit <[email protected]>
Signed-off-by: Mathis Richter <[email protected]>
Signed-off-by: Mathis Richter <[email protected]>
Signed-off-by: Mathis Richter <[email protected]>
Signed-off-by: Mathis Richter <[email protected]>
Signed-off-by: Mathis Richter <[email protected]>
Signed-off-by: Mathis Richter <[email protected]>
…t (wip) Signed-off-by: Mathis Richter <[email protected]>
� Conflicts: � src/lava/magma/compiler/compiler.py � src/lava/magma/core/model/py/ports.py � tests/lava/magma/core/model/py/test_ports.py
Signed-off-by: Mathis Richter <[email protected]>
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.
I think this looks good so far. When the OutPorts are also added, we should pull some of the loops looking for virtual ports in the compiler into a sub method.
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.
Looks fine. I just have a few minor remarks.
I just think we should probably raise an error in one special case of branching/joining.
…hierarchical Processes Signed-off-by: Mathis Richter <[email protected]>
Looks good. Can confirm transpose, reshape and flatten work with hierarchical process. |
Signed-off-by: Mathis Richter <[email protected]>
Signed-off-by: Mathis Richter <[email protected]>
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.
Looks fine.
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.
Looks good overall.
Signed-off-by: Mathis Richter <[email protected]>
� Conflicts: � src/lava/magma/compiler/compiler.py
Merging this in its current form for the release. This PR only supports virtual ports for reshape, flatten, and transpose between an OutPort and an InPort. Hierarchical Processes as well as chains of virtual ports are supported as well. But joining and forking as well as connection to and from other types of Ports (RefPorts, VarPorts) are not yet supported. |
* permute initial implementation Signed-off-by: bamsumit <[email protected]> * Tests for permute ports * Process property of virtual ports no longer returns None Signed-off-by: Mathis Richter <[email protected]> * Added initial run-unittest for flatten() from issue lava-nc#163 Signed-off-by: Mathis Richter <[email protected]> * User-level API for TransposePort with unit tests Signed-off-by: Mathis Richter <[email protected]> * Fixed typo Signed-off-by: Mathis Richter <[email protected]> * Unit tests for flatten() and concat_with() Signed-off-by: Mathis Richter <[email protected]> * Unit tests for virtual ports in Processes that are executed (wip) Signed-off-by: Mathis Richter <[email protected]> * Preliminary implementation of virtual ports between OutPort and InPort (wip) Signed-off-by: Mathis Richter <[email protected]> * Fixing unit tests after merge Signed-off-by: Mathis Richter <[email protected]> * Added support for virtual ports between an OutPort and InPort of two hierarchical Processes Signed-off-by: Mathis Richter <[email protected]> * Clean up, exceptions, and generic unit tests for virtual port topologies Signed-off-by: Mathis Richter <[email protected]> * Fixed linter issues Signed-off-by: Mathis Richter <[email protected]> * Raising an exception when executing ConcatPort Signed-off-by: Mathis Richter <[email protected]> Co-authored-by: bamsumit <[email protected]> Co-authored-by: Marcus G K Williams <[email protected]>
Issue Number: #185 (partial fulfilment)
Objective of pull request: Supplies an implementation of virtual ports (reshape, flatten, transpose) for PyProcModels
Pull request checklist
Your PR fulfills the following requirements:
pyb
) passes locallypyb -E unit
) or (python -m unittest
) passes locallyPull request type
Please check your PR type:
What is the current behavior?
What is the new behavior?
Does this introduce a breaking change?
Supplemental information