Skip to content

stencil_config

RunMode

Bases: Enum

Run-Mode for the model Build: compile & save compiled files only BuildAndRun: compile & save compiled files, then run Run: load from .so and run, will fail if .so is not available

Build = 0 class-attribute instance-attribute

BuildAndRun = 1 class-attribute instance-attribute

Run = 2 class-attribute instance-attribute

CompilationConfig

backend = backend instance-attribute

rebuild = rebuild instance-attribute

validate_args = validate_args instance-attribute

format_source = format_source instance-attribute

device_sync = device_sync instance-attribute

run_mode = run_mode instance-attribute

use_minimal_caching = use_minimal_caching instance-attribute

__init__(backend=backend_python, rebuild=True, validate_args=True, format_source=False, device_sync=False, run_mode=RunMode.BuildAndRun, use_minimal_caching=False, communicator=None)

check_communicator(communicator)

Checks that the communicator has a square layout

Parameters:

Name Type Description Default
communicator Communicator

communicator to use

required

Raises:

Type Description
RuntimeError

If non-square layout is given

determine_compiling_equivalent(rank, partitioner)

From my rank & the current partitioner we determine which rank we should read from

get_decomposition_info_from_comm(communicator)

as_dict()

from_dict(data) classmethod

StencilConfig dataclass

Bases: Hashable

compare_to_numpy = compare_to_numpy class-attribute instance-attribute

compilation_config = compilation_config class-attribute instance-attribute

verbose = verbose class-attribute instance-attribute

dace_config = dace_config if dace_config is not None else DaceConfig(communicator=None, backend=(self.compilation_config.backend), orchestration=(DaCeOrchestration.BuildAndRun)) class-attribute instance-attribute

backend_opts = {'device_sync': self.compilation_config.device_sync, 'format_source': self.compilation_config.format_source} instance-attribute

backend property

is_gpu_backend property

__init__(*, compare_to_numpy=False, compilation_config=None, verbose=False, dace_config=None)

stencil_kwargs(*, func, skip_passes=())