Semantic Constraints and Assumptions

 

 

 

The following constraints and assumptions are used in PMIF-Ex:

 

·        If there are multiple SolutionSpecs in an experiment, Variables do not keep their values, they have to be reassigned.

·        OutputVariables require an initial value. If there are multiple SolutionSpecs in an experiment, the initial value is restored at the next SolutionSpec.

·        LocalVariables retain the last assigned value. They are not reset automatically.

·        If the type of solution is not specified, the solution tool uses its default, or the translation from the xml to the tool will specify a default. If both (Analytic and Simulation) are specified, the model is to be solved both ways.

·        While most model parameters can be changed with the PMIF-Ex, changing a workload from open to closed or vice versa requires many changes to the model. It would be better to define “dummy” workloads, one open and one closed, and change the workload intensities to use only the one wanted for a particular solution spec.

·        For multiple Ranges that may not have the same number of iterations, the iteration ends when the first Range is complete.

·        After completion of a SolutionSpec, the model reverts to the original as specified in the PMIF (not the version that was just solved). So changes are only temporary and each change applies to the original.

·        StopWhen permits the use of “any” and “all” for example StopWhen any device reaches 100% utilization. This means that devices cannot be named any or all.

·        If multiple StopWhens are specified, they behave as an OR and the iteration terminates when the first condition is satisfied.

·        If the StopWhen condition is true before the first iteration, the iteration will not execute.

·        The current value of all variables should be included with the output variables

·        If output is not specified, the tool should provide a standard set of results.

 

We initially had a specific definition of the output to be produced. For example, one could specify throughput for a subset of the workloads. This was changed to simplify the OutputSpec; the (future) specification of analysis and results should filter the results if necessary.