Skip to content

Update README.md#1

Merged
gargrahul merged 2 commits into
mainfrom
gargrahul/update_doc
May 30, 2025
Merged

Update README.md#1
gargrahul merged 2 commits into
mainfrom
gargrahul/update_doc

Conversation

@gargrahul

Copy link
Copy Markdown
Collaborator

No description provided.

@gargrahul
gargrahul merged commit 8be0a42 into main May 30, 2025
@gargrahul
gargrahul deleted the gargrahul/update_doc branch June 4, 2025 01:40
srinivamd added a commit to srinivamd/madengine that referenced this pull request Apr 23, 2026
…as; rename TimeoutError->DeploymentTimeoutError; remove unused imports

- Copilot review comment ROCm#1: ConnectionError rename is a breaking API
  change; add `ConnectionError = NetworkError` deprecated alias so
  existing callers still work for one release cycle
- Remove unused `import traceback` and `from rich.table import Table`
- Rename TimeoutError -> DeploymentTimeoutError to avoid shadowing
  Python built-in and avoid confusion with madengine.core.timeout
- Remove RuntimeError = ExecutionError alias (shadowed Python built-in)
raviguptaamd added a commit to raviguptaamd/madengine that referenced this pull request May 1, 2026
Address all 9 inline comments from copilot-pull-request-reviewer[bot]:

ROCm#1 build_orchestrator.py — _execute_with_prebuilt_image now keys
   manifest['built_models'] by model_name (not use_image), so multiple
   models that share the same pre-built image are all preserved in the
   manifest.

ROCm#2 build_orchestrator.py — warn when discovered models have differing
   distributed/slurm configs in the prebuilt-image flow; the post-merge
   step still uses models[0]'s config but operators are now told.

ROCm#3 build_orchestrator.py — _execute_build_on_compute() now raises
   ConfigurationError early when registry is None instead of falling
   into registry.replace/.split/.lower with NoneType.

ROCm#4 build_orchestrator.py — credentials-required error now emits
   per-registry hints (docker.io / ghcr.io / gcr.io / quay.io / nvcr.io)
   instead of Docker-Hub-only PAT guidance.

ROCm#5 container_runner.py — document the shell=True trust boundary on the
   inner subprocess.run; cmd is internally constructed and any user
   model_args are routed through shlex-quoted assembly in the caller.

ROCm#6 slurm.py — drop duplicate `from typing import Optional` import.

ROCm#7 slurm.py — slurm_multi wrapper no longer hard-codes
   `#SBATCH --exclusive`; honours self.slurm_config.get('exclusive', True)
   to match the standard SLURM template behaviour.

ROCm#8 slurm_node_selector.py — cleanup_node()'s srun_cmd is now built once
   and includes both --job-name (when provided) and --reservation (when
   set); the second in-try reassignment that dropped --job-name is gone.

ROCm#9 run_orchestrator.py — replace the shallow `merged.update(...)` with
   a real recursive _deep_merge so the comment ("deep-merge") matches the
   behaviour: nested dicts under slurm/k8s/distributed/etc. are merged
   per-leaf, runtime --additional-context still wins on conflicts.

Made-with: Cursor
raviguptaamd added a commit to raviguptaamd/madengine that referenced this pull request May 3, 2026
… perf.csv collection

Three fixes that surfaced during the PR ROCm#86 smoke test against the
Distributed_Inference_CI reservation:

1. ErrorContext kwargs sweep (build_orchestrator.py: 5 sites)
   ErrorContext is a dataclass with a fixed field set
   {operation, phase, component, model_name, node_id, file_path,
    additional_info}. Five call-sites passed kwargs that don't exist
   (`model=`, `launcher=`, `model_names=`, `registry=`, `dockerfile=`),
   which raised `TypeError: ErrorContext.__init__() got an unexpected
   keyword argument 'model'` BEFORE the real ConfigurationError was
   constructed. The slurm_multi guard error in particular ("requires
   --registry or --use-image") was never visible to users.

   Migrated those kwargs to the proper `model_name=` field or to
   `additional_info={...}` so the user-facing error messages now
   reach the console.

2. F1: model-card image fallback for slurm_multi (build_orchestrator.py)
   When a discovered model card declares
   `env_vars.DOCKER_IMAGE_NAME` and the user passes neither
   `--registry` nor `--use-image`, treat the card's image as an
   implicit `--use-image` and call _execute_with_prebuilt_image()
   directly. Avoids forcing operators to repeat the image on the CLI
   for slurm_multi flows whose model cards already pin it.

   Falls back to the existing ConfigurationError (now visible thanks
   to fix ROCm#1) when no card image is set or when discovered models
   declare divergent images.

3. F-perf: extended slurm_multi perf.csv search paths (slurm.py)
   `_collect_slurm_multi_results` now looks in the locations the
   inner scripts (MAD-private PR #186) actually write to:
     * `/shared_inference/<user>/<deployment_id>/perf.csv`
       (sglang_disagg / vllm_disagg via benchmark_xPyD.sh)
     * `<workspace>/slurm_output/perf_csv/*<deployment_id>*.csv`
       (large_ep_benchmark / kvcache_transfer_bench)
   in addition to the existing `slurm_config.results_dir` and
   `<cwd>/perf.csv` paths, with NFS-propagation retry on each
   candidate. Fixes the "0 perf files, 1 log files" outcome we hit
   on Slurm job 22607 even though `/shared_inference/ravgupta/22607/perf.csv`
   was actually generated.

Co-authored-by: Cursor <cursoragent@cursor.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant