agentsclimarketplace

Asus esc8000 gpu bios tuning

Skill soulmachine/skills/asus-esc8000-gpu-bios-tuning

Apply a low-latency GPU-serving + VM-passthrough BIOS profile to ASUS ESC8000-E12P (ASMB12/AMI-BMC, Xeon 6/GNR) servers over Redfish — diff current settings, stage, reboot, verify. Use when asked to optimize/tune BIOS for GPU inference/serving, set performance power profile, enable Resize BAR / SR-IOV / disable SNC, or replicate one server's BIOS config onto another ESC8000.From its SKILL.md

Install
npx -y skills add soulmachine/skills --skill asus-esc8000-gpu-bios-tuning

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

3 things to look at

  • reads credentialsReads from 1 credential source: `BMC_PASSWORD`.
  • 3 stars3 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
  • runs commandsInstructs the agent to run 5 commands, including `export BMC_PASSWORD='...'` and 4 more.

SKILL.md

3.3 KB, 820 tokens by cl100k_base, as published. Nobody here has run it

ASUS ESC8000 GPU-Serving BIOS Tuning

Applies a 10-setting low-latency profile + verifies a 4-setting passthrough baseline, over Redfish. Validated on ESC8000-E12P (8× RTX PRO 6000 Blackwell, 2× Xeon 6730P, BIOS 0804). Settings are reversible until you reboot; the tool is dry-run by default.

Quick start

export BMC_PASSWORD='...'
# 1. Dry-run: show what would change on the target (no writes)
python3 scripts/tune_gpu_bios.py --target <BMC_IP>

# 2. Stage only (reversible, no reboot) — settings pending until next boot
python3 scripts/tune_gpu_bios.py --target <BMC_IP> --apply

# 3. Stage + reboot + verify active (the full apply)
python3 scripts/tune_gpu_bios.py --target <BMC_IP> --apply --reboot

Two source modes (pick one)

  • Profile (default): targets come from scripts/gpu_serving_profile.json (token strings validated on BIOS 0804 / registry S0317.8.4.0).
  • Template (most robust): copy the live values from an already-tuned reference server — immune to BIOS-version token drift:
    python3 scripts/tune_gpu_bios.py --target <new_BMC_IP> --from-host <tuned_BMC_IP> --apply --reboot
    
    Prefer --from-host when you have a known-good server (e.g. tuning a second box to match the first).

The profile (what & why)

10 tuned + 4 baseline-verified. Full rationale table in REFERENCE.md. Headline: Resize BAR on, EPP/EPB → Performance, Energy-Efficient-Turbo / C1E-promotion off, Workload → I/O-sensitive, Latency-Optimized on, SNC off (1 NUMA/socket), ASPM-IIO off, AC-loss → Power On. Baseline (must already hold): Above-4G on, SR-IOV on, ACS off (fast GPU P2P — flip to on only at VM adoption). VT-d has no BIOS toggle on this platform (always exposed; gate it OS-side).

Workflow checklist

  1. Confirm firmware parity first — same BIOS version on source & target, else tokens won't match (use the asus-esc8000-firmware-upgrade skill). With --from-host, mismatched versions are flagged.
  2. Dry-run; review the diff with the operator.
  3. --apply --reboot. The reboot is GracefulShutdown → poll Off → On (this build has no GracefulRestart). POST takes ~5–6 min (SNC change forces full memory retraining).
  4. Verify prints VERIFIED N/N active. The post-reboot host shows 0/N mid-POST — that's normal, it resolves when the host republishes its BIOS map.

Gotchas (details in REFERENCE.md)

  • PATCH target is …/Bios/SD, not /Bios/Settings; needs If-Match etag (else 428).
  • PATCH returns 503 ("inventory processing") while the host is mid-boot — wait for it to settle.
  • Pace gently / single connection; a freshly-rebooted AMI BMC locks out on rapid auth (AccessDenied).
  • This only touches BIOS. The intel_iommu=on iommu=pt kernel cmdline is a separate OS-side step.

See REFERENCE.md for the attribute table, rationale, and the full Redfish API notes.

What ships with it: 3 files

12.7 KB alongside SKILL.md, 1 of them executable

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.