10 likes | 92 Views
New Width Inference Algorithm. Bert Rodiers, Ben Lickly. Rationale
E N D
New Width Inference Algorithm Bert Rodiers, Ben Lickly • Rationale • In Ptolemy II relations can have multiple channels, each one representing a sequence of tokens. The number of channels is specified by the width of a relation. Having to explicitly specify the width for each relation can be a tedious job. To make it even worse, the addition of one relation to a multiport might result in a model builder needing to go through the model again to adapt widths. To cope with this you can let the relations infer the width from other relations or other ports with a graph algorithm. Constraints mechanism on ports in atomic actors • Restricted existing algorithm • Only one relation to be inferred at each port Width of relation connected to “true output” has to be equal to input. To infer this width trueOutput.setWidthEquals(input, true); falseOutput.setWidthEquals(input, true); • New default • Default width: Auto Has 2 relations to be inferred connected to it. Old algorithm would fail. Performance Acknowledgement • Properties of new algorithm • Widths are propagated • Each relation is only visited once • Linear, but more expensive algorithm • Initialization step: O(total number of relations) This work is supported in part by the Center for Hybrid and Embedded Software Systems (CHESS), at UC Berkeley, which recieves support from the National Science Foundation (NSF awards #0720882 (CSR-EHS: PRET) and #0720841 (CSR-CPS)), the U. S. Army Research Office (ARO #W911NF-07-2-0019), the U. S. Air Force Office of Scientific Research (MURI #FA9550-06-0312), the Air Force Research Lab (AFRL), the State of California Micro Program, and the following companies: Agilent, Bosch, Lockheed-Martin, National Instruments, Thales and Toyota. • Consistency check • Checks whether there is a unique solution and no contradictions • Can be disabled