MultiprocessStepSlice#

settings activitysim.core.configuration.MultiprocessStepSlice#

Instructions on how to slice tables for each subprocess.

Changed in version 1.3: In ActivitySim versions 1.2 and earlier, slicing instructions for multiprocess steps allowed for an “except” instruction, which has been renamed to be “exclude” to avoid problems from using a reserved Python keyword.

Fields:
  • exclude (Union[bool, str, list[str]])

  • tables (list[str])

field exclude: Union[bool, str, list[str]] = None#

Optional list of tables not to slice even if they have a sliceable index name.

Or set to True or “*” to exclude all tables not explicitly listed in tables.

Note in ActivitySim versions 1.2 and earlier, this option was named “except” instead of “exclude”, but that is a reserved python keyword and cannot be used as a Pydantic field name.

field tables: list[str] [Required]#

The names of tables that are to be sliced for multiprocessing.

The index of the first table in the ‘tables’ list is the primary_slicer. Any other tables listed are dependent tables with either ref_cols to the primary_slicer or with the same index (i.e. having an index with the same name). This cascades, so any tables dependent on the primary_table can in turn have dependent tables that will be sliced by index or ref_col.

For instance, if the primary_slicer is households, then persons can be sliced because it has a ref_col to (column with the same same name as) the household table index. And the tours table can be sliced since it has a ref_col to persons. Tables can also be sliced by index. For instance the person_windows table can be sliced because it has an index with the same names as the persons table.