The parse_vtr_task scripts allow you to compare an executed task to a golden reference result.
The comparison, which is performed when using the
parse_vtr_task.py -check_golden option, which reports either
The requirements that must be met to qualify as a
Pass are specified in the pass requirements file.
Tasks can be configured to use a specific pass requirements file using the pass_requirements_file keyword in the Tasks configuration file.
All provided pass requirements files are located here:
Users can also create their own pass requirement files.
Each line of the file indicates a single metric, data type and allowable values in the following format:
<metric>: The name of the metric.
<requirement>: The metric’s pass requirement.
Valid requiremnt types are:
Equal(): The metric value must exactly match the golden reference result.
Range(<min_ratio>,<max_ratio>): The metric value (normalized to the golden result) must be between
RangeAbs(<min_ratio>,<max_ratio>,<abs_threshold>): The metric value (normalized to the golden result) must be between
<max_ratio>, or the metric’s absolute value must be below
Or an include directive to import metrics from a separate file:
<filepath>: a relative path to another pass requirements file, whose metric pass requirements will be added to the current file.
In order for a
Pass to be reported, all requirements must be met.
For this reason, all of the specified metrics must be included in the parse results (see Parse Configuration).
Comments can be specified with
#. Anything following a
# is ignored.
vpr_status;Equal() #Pass if precisely equal vpr_seconds;RangeAbs(0.80,1.40,2) #Pass if within -20%, or +40%, or absolute value less than 2 num_pre_packed_nets;Range(0.90,1.10) #Pass if withing +/-10% %include "routing_metrics.txt" #Import all pass requirements from the file 'routing_metrics.txt'