The flow orchestrators would be faster if they stored the link port and node map information for quicker access, such as getNodeMap(), getNumberPorts(), getPortDirections() - just like the solver does. Since the solver already stores these and also initializes the orchestrator, just have the solver share its arrays with the orchestrator. This will improve the flow orchestration speed for large networks, and save memory.
[ ] the solver should share its mLinkNumPorts, mLinkNodeMaps, and mLinkPortDirections arrays with the orchestrator.
[ ] the orchestrator should use these arrays instead of repeatedly calling the link's getter functions.
The flow orchestrators would be faster if they stored the link port and node map information for quicker access, such as getNodeMap(), getNumberPorts(), getPortDirections() - just like the solver does. Since the solver already stores these and also initializes the orchestrator, just have the solver share its arrays with the orchestrator. This will improve the flow orchestration speed for large networks, and save memory.