Skip to content

Run multiple Autory models

Any Excel workbook containing tables named RunMultipleRuns and RunMultipleOptions can be used to start multiple Autory runs in one go.

Starting the runs

Choose one of the following:

  • Use the autory run multiple command and provide the path to the workbook on the command line.
  • Click Save & run multiple in the Autory Excel ribbon while the workbook is open.
  • Click "Save & run multiple" in the workbook itself (for older versions of Autory that did not yet have the ribbon).

To stop a batch after it has started, see how to stop a run.

RunMultipleRuns table

Column name Data type Example Required
Active Boolean TRUE
Group Integer 0
Weight Number 0
Description Text Baseline
Model Text model.xlsx
RunControl →
Global →
Starting with _

Active column

This column controls whether a run is executed or skipped.

  • Runs for which this column evaluates to something truthy (e.g. TRUE or 1) will be executed.
  • Runs for which this column evaluates to something falsy (e.g. FALSE or 0) will be skipped.

Group column

Runs with the same group number are executed in parallel, if parallel execution is enabled. Runs with different group numbers are executed sequentially, in ascending order of the group number.

Runs which depend on the results of previous runs should have a higher group number than the runs they depend on. See reusing results from previous runs for how Autory reads those results from .feather output files.

Weight column

Runs within a group are executed in ascending order of their weight.

For example, if the maximum number of parallel runs is set to 2, and there are 4 runs in group 0 with weights 0, 1, 2, and 3, then the runs with weights 0 and 1 will be started first. As soon as either 0 or 1 finishes, the run with weight 2 will be started, and so on.

Description column

A short description to help you identify the run in the progress bars on the terminal and in the log files.

Model column

The path to the workbook containing the Autory model to run. This may be an absolute path, or a path relative to the current workbook's parent folder.

The default value is the path to the current workbook.

This column is optional when the workbook containing the RunMultipleRuns table is itself an Autory model, otherwise it is required.

Run control columns

The RunControl → column itself is not used – it is just a marker. Columns to the right of this marker, until the next marker column or the end of the table, are considered run control columns.

These columns are optional and may be used to override run control options of the individual runs. See the examples below.

Changes from Autory 2 to Autory 3

Run control columns must use Autory 3 names. If an Autory 2 RunMultiple workbook has columns such as RunFromHLevel, ValnTypesToOutput, or LoopWriteIterationsToSqlite, replace them with the current filter options: RunProjectionNodesFilter, OutputProjectionNodeFilter, OutputTimeStepFilter, or post-run autory convert results commands.

Global columns

The Global → column itself is not used – it is just a marker. Columns to the right of this marker, until the next marker column or the end of the table, are considered global scalar override columns.

These columns are optional and may be used to override global scalar formulas of the individual runs. The column name is the global scalar name, and the cell value is converted to a formula string. For text scalars, include quotes in the cell value, for example "baseline". Blank cells are ignored.

Columns starting with underscore

These columns are always ignored. You may use them for any purpose.

RunMultipleOptions table

A table named RunMultipleOptions may be used to configure options for the entire batch of runs. It has at least two columns: Name and Value, forming key-value pairs.

The following options are supported:

Name Example
parallel 2
PreRunScripts one
two
PostRunScripts

parallel option

The number of simultaneous runs to do. This makes better use of multicore CPUs when there are multiple runs.

Warning

Making this number too high may cause bottlenecks which slow down all runs instead of speeding them up. The ideal number depends on your CPU, RAM, disk speed (or network speed if using shared drives), and the models being run.

PreRunScripts and PostRunScripts options

This is similar to the PreRunScripts and PostRunScripts run control options, except that they run before/after all runs instead of before/after each individual run.

Tip

If you want to change the PreRunScripts or PostRunScripts for individual runs, add columns called PreRunScripts or PostRunScripts to the right of RunControl → in the RunMultipleRuns table instead.

Examples

Active Group Weight Description Model RunControl → RunDate RunHierarchyLevel Global → DiscountRate ScenarioLabel
TRUE 0 0 Example 1 model1.xlsm 2026/12/31 3 0.04 "baseline"
FALSE 0 1 Example 2 model2.xlsm 2027/12/31 3 0.05 "stress"