Chakra Replay#

Chakra Replay workload (test_template_name is ChakraReplay) replays execution traces from the Chakra execution trace format for performance analysis and debugging.

Usage Examples#

Test TOML example:

name = "my_chakra_test"
description = "Example Chakra replay test"
test_template_name = "ChakraReplay"

[cmd_args]
trace_path = "/path/to/trace.et"

Test Scenario example:

name = "chakra-replay-test"

[[Tests]]
id = "chakra.1"
num_nodes = 1
time_limit = "00:10:00"

test_name = "my_chakra_test"

Test-in-Scenario example:

name = "chakra-replay-test"

[[Tests]]
id = "chakra.1"
num_nodes = 1
time_limit = "00:10:00"

name = "my_chakra_test"
description = "Example Chakra replay test"
test_template_name = "ChakraReplay"

  [Tests.cmd_args]
  trace_path = "/path/to/trace.et"

API Documentation#

Command Arguments#

class cloudai.workloads.chakra_replay.chakra_replay.ChakraReplayCmdArgs(
*,
docker_image_url: str,
mpi: str = 'pmix',
trace_type: str = 'et',
trace_path: str | None = None,
num_replays: int = 1,
**extra_data: Any,
)[source]#

Bases: CmdArgs

ChakraReplay test command arguments.

Test Definition#

class cloudai.workloads.chakra_replay.chakra_replay.ChakraReplayTestDefinition(*, name: str, description: str, test_template_name: str, cmd_args: ~cloudai.workloads.chakra_replay.chakra_replay.ChakraReplayCmdArgs, dse_excluded_args: list[str] = <factory>, extra_env_vars: dict[str, str | ~typing.List[str]] = {}, extra_cmd_args: dict[str, str] = {}, extra_container_mounts: list[str] = [], git_repos: list[~cloudai._core.installables.git_repo.GitRepo] = [], nsys: ~cloudai.models.workload.NsysConfiguration | None = None, predictor: ~cloudai.models.workload.PredictorConfig | None = None, agent: str = 'grid_search', agent_steps: int = 1, agent_metrics: list[str] = ['default'], agent_reward_function: str = 'inverse', agent_config: dict[str, ~typing.Any] | None = None)[source]#

Bases: TestDefinition

Test object for ChakraReplay.

is_dse_excluded_arg(path: str) bool#

Return whether a dot-separated cmd_args path should be ignored by DSE.