| name | asus-esc8000-gpu-bios-tuning |
| description | 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. |
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='...'
python3 scripts/tune_gpu_bios.py --target <BMC_IP>
python3 scripts/tune_gpu_bios.py --target <BMC_IP> --apply
python3 scripts/tune_gpu_bios.py --target <BMC_IP> --apply --reboot
Two source modes (pick one)
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
- 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.
- Dry-run; review the diff with the operator.
--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).
- 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.