torc 0.23.0

Workflow management system
# Test: Multi-Node Parallel CPU Stress
#
# 2-node allocation with a single worker managing both nodes, 40 parallel jobs.
# Each job uses stress-ng to exercise 5 CPUs for 30 seconds.
# Tests per-node resource tracking and --nodelist placement across 2 nodes.

name: multi_node_parallel
description: 2-node allocation — 40 jobs x 5 CPUs via stress-ng
project: slurm-tests
execution_config:
  mode: slurm
  enable_cpu_bind: true

resource_monitor:
  enabled: true
  granularity: time_series
  sample_interval_seconds: 2

resource_requirements:
  - name: work_resources
    num_cpus: 5
    num_nodes: 1
    memory: 2g
    runtime: PT3M

jobs:
  - name: stress_{i}
    command: bash -c 'echo "Running on $(hostname)"; stress-ng --cpu 5 --timeout 30 --metrics-brief'
    resource_requirements: work_resources
    scheduler: two_node_scheduler
    parameters:
      i: 1:40

slurm_schedulers:
  - name: two_node_scheduler
    account: PLACEHOLDER_ACCOUNT
    partition: PLACEHOLDER_PARTITION
    nodes: 2
    walltime: "00:10:00"

actions:
  - trigger_type: "on_workflow_start"
    action_type: "schedule_nodes"
    scheduler: "two_node_scheduler"
    scheduler_type: "slurm"
    num_allocations: 1