AI Training Power Swings, Grid Oscillations and BESS Sizing

Model synchronized GPU training pulses, source frequency and bus voltage. Size ramp-limited BESS power and energy, and compare the energy cost of dummy-load gap filling.

#BESS #Continuous extrema #Fourier spectrum #GPU training #H100 #ISO 8528-5:2025 #swing equation #Weak grids

AI training power fluctuation becomes a site-level problem when thousands of accelerators reach a communication barrier together. Their individual power drops add coherently, producing a repeated GPU power swing at the grid intake. This calculator connects that workload pattern to source frequency, bus voltage and practical buffering requirements.

Use it when comparing an islanded gas-engine plant, a weak-grid connection, battery smoothing or software gap filling. Engineers can screen a proposed training schedule; students can explore inertia and resonance; operators can test measured compute and communication power against a site's available headroom. The defaults represent one synchronized H100-like job. They are an illustrative source configuration, not a particular engine's test data.

Enter the number of accelerators participating in the same barrier, their two power levels, the training period and the compute duty fraction. Power-chain efficiency converts board power into grid-side demand. Add the steady site load separately; do not multiply all loads by an assumed power usage effectiveness. Unsynchronized jobs should be studied individually or with measured aggregate traces.

For gas engines, use inertia on the entered source power base, governor droop, a combined governor/engine response time and frequency-sensitive load damping. Enter the load-step fraction agreed with the engine supplier. ISO 8528-5:2025 provides the generating-set performance context, but gas-engine acceptance depends on the actual operating point and constant-power load behavior. This tool does not assign a performance class.

For a grid connection, enter short-circuit ratio and X/R for voltage strength, and obtain the equivalent modal inertia, power base, mode frequency and damping from a planning study. Short-circuit ratio alone cannot predict frequency response. The iteration-period chart includes 60 load harmonics, exposing secondary resonance peaks that a fundamental-only screen can miss.

Set a source ramp-rate limit to size a causal moving-average BESS controller. The calculator balances charge and discharge losses over each cycle, then reports inverter power, cyclic energy excursion and pack capacity after the usable SOC window and power-to-energy rating. Pulse energy can be small while repeated charging power demands a much larger battery. Compare its replenishment energy with the extra energy consumed by dummy kernels during communication gaps. Gap filling also raises average source loading.

Play the schematic to follow synchronized load changes and battery power flow. Frequency traces include the start of cycling from a balanced mean operating point. The voltage trace is the constant-PQ, fixed-EMF RMS envelope; it does not represent AVR recovery or converter switching.

This model does not cover protection settings, fault ride-through, UPS control interactions, multi-mode network stability, engine fuel limits, battery thermal management or cycle life. Use site telemetry and equipment models for those studies. Installation work belongs to a qualified person; check against the standard in force.

How it is calculated

Workload and spectrum. The synchronized site swing is ΔP=N(Pcompute−Pidle)/ηchain\Delta P=N(P_\mathrm{compute}-P_\mathrm{idle})/\eta_\mathrm{chain}, with floor Pother+NPidle/ηchainP_\mathrm{other}+NP_\mathrm{idle}/\eta_\mathrm{chain} and mean Pfloor+dΔPP_\mathrm{floor}+d\Delta P. Harmonic nn has peak amplitude 2ΔP∣sin⁡(nπd)∣/(nπ)2\Delta P|\sin(n\pi d)|/(n\pi) at n/Tn/T. This follows the BSP pulse representation in Chaudhary et al., arXiv:2606.22096, p. 2. Sixty harmonics are retained for the spectrum, RMS period sweep and amplitude-sum frequency screen.

Time-domain source. With x=Δf/f0x=\Delta f/f_0, per-unit load perturbation u=(P−Pmean)/Pbaseu=(P-P_\mathrm{mean})/P_\mathrm{base} and angle δ\delta, the implemented equations are

δ˙=ω0x,2Hx˙=pm−u−Dx−Kδ,Tgp˙m=−Gx−pm.\dot\delta=\omega_0x,\qquad 2H\dot x=p_m-u-Dx-K\delta,\qquad T_g\dot p_m=-Gx-p_m.

An island has K=0K=0, G=1/RG=1/R and entered DD. A grid-mode equivalent has G=0G=0, K=2Hωk2/ω0K=2H\omega_k^2/\omega_0 and D=4HζkωkD=4H\zeta_k\omega_k. Grid damping includes the dynamics already represented by that mode. These state equations and their transfer function are derived here; they are not a detailed gas-engine or multi-bus model. Each constant or linear-load interval is propagated with an augmented matrix exponential. Every compute edge, barrier edge and BESS ramp corner is an integration boundary. This solves the linear ODE without smoothing the raw pulses or truncating them to harmonics. Within each interval, each relevant state is a linear particular solution plus the two-pole homogeneous response. All stationary points are located continuously: derivative zeroes are analytic for an unshifted modal response; for a ramp-driven response, analytic derivative turning points bracket each zero for bisection. The real-pole and repeated-pole limits are included. Frequency, mechanical-power and grid-angle extrema therefore do not depend on the plot grid or the simulation horizon's sample spacing. The characteristic poles are rates in s⁻¹; only the modal oscillation frequency is converted to Hz by dividing its imaginary rate by 2π.

The frequency transfer gain is

∣F/P∣=f0/Pbase∣2Hjω+D+G/(1+Tgjω)+Kω0/(jω)∣.|F/P|=\frac{f_0/P_\mathrm{base}}{|2Hj\omega+D+G/(1+T_gj\omega)+K\omega_0/(j\omega)|}.

The period chart shows ∑n∣Fn∣2/2\sqrt{\sum_n|F_n|^2/2}; the arithmetic amplitude sum is a conservative bound for the retained harmonics only. The frequency-only accelerator bound uses that sum and does not include voltage, engine headroom or startup.

Voltage. On the same source base, solve the high-voltage root of V4−[E2−2(rp+xthq)]V2+∣z∣2(p2+q2)=0V^4-[E^2-2(rp+x_\mathrm{th}q)]V^2+|z|^2(p^2+q^2)=0. Engine impedance uses entered transient reactance; grid impedance uses ∣z∣=Pbase/(SCR Ssite,peak)|z|=P_\mathrm{base}/(\mathrm{SCR}\,S_\mathrm{site,peak}). Each alternative's fixed internal EMF is set to give unity bus voltage at its own mean load. Voltage extrema and feasibility are evaluated on both sides of every pulse edge and at all ramp corners, requiring positive discriminant and positive squared-voltage root. The BESS supplies active power only, so raw reactive-load pulses remain. Dummy kernels have the entered site power factor.

Buffer and gap filling. Source demand is the causal box average of raw load over w=ΔP/P˙limitw=\Delta P/\dot P_\mathrm{limit}, plus a constant loss-replenishment bias. This guarantees the ramp bound even when the averaging window spans several periods. Its harmonic filter is sin⁡(πfw)/(πfw)\sin(\pi fw)/(\pi fw). Brent iteration finds the bias that balances ∫Pdis/ηb dt=∫Pchgηb dt\int P_\mathrm{dis}/\eta_b\,dt=\int P_\mathrm{chg}\eta_b\,dt. Exact piecewise-linear power areas give inverter extrema and pack energy; zero crossings are included. Nameplate energy is the larger of cyclic excursion/usable SOC and internal pack power/entered C-rate. These sizes apply to this controller and are not a global optimum. Mean dummy power is α(1−d)ΔP\alpha(1-d)\Delta P; its added energy and the BESS replenishment energy are multiplied by job runtime. The gap-fill mechanism is supported by Ardestani et al., arXiv:2605.24461, pp. 9–10.

Assumptions

  • One deterministic, fully synchronized job, rectangular compute/barrier phases and steady non-GPU load. All accelerator and supply efficiencies are constant. The 700 W / 100 W / 0.90 defaults follow the H100 illustration in arXiv:2606.22096; source, impedance and battery defaults are illustrative user parameters.
  • HH must be expressed on the chosen power base: preserve HPbaseH P_\mathrm{base} when changing base. The grid mode is a calibrated equivalent coordinate; SCR does not identify its inertia, frequency or damping.
  • Frequency starts at zero deviation with mechanical power dispatched to each alternative's mean load. The BESS has periodic workload history and adequate initial charge. Enabling/disabling the buffer or dummy kernels and their mean-power pickup are not simulated.
  • Constant-PQ load at lagging PF, fixed source EMF during the trace, no active/reactive coupling through AVR or volts-per-hertz controls. The source must support the dummy load's higher mean.
  • Ideal, immediate bidirectional inverter tracking; equal one-way charge/discharge efficiency. The entered C-rate applies to repeated charging as well as discharging; no degradation, auxiliaries, standby losses or temperature derating.

Where it applies

Use the source model for small frequency and equivalent-angle excursions with an unsaturated governor. Conditions flag a raw excursion above 5% frequency, a grid-mode angle above 0.3 rad, engine mechanical power outside 0…rated power, an OEM load-step exceedance, or loss of the high-voltage constant-power solution. The governor is linear: a flagged saturation requires an equipment model rather than extrapolation.

Voltage is a time-varying algebraic RMS envelope at fixed EMF, not an AVR transient prediction. Engine excitation, turbocharger/fuel/air limits, secondary frequency restoration, UPS current limiting and converter controls are excluded. A weak-grid study can require several modes and location-dependent participation; one equivalent mode cannot represent wide-area dynamics generally.

The raw pulse waveform and continuous linear source dynamics are retained between breakpoints. Continuous stationary-point searches determine the extrema independently of horizon length and display resolution. Reported peaks include a conservative numerical allowance. An unconverged search or frequency allowance above 1 µHz blocks a passing assessment and raises a condition. Time plots evaluate the interval solution at 1,801 display points; playback uses shape-preserving interpolation. A short transient can be visually undersampled in a long trace even though the reported peak includes it; do not read protection timing from the plot. Battery areas include exact sign crossings; the energy curve has about 800 samples per period.

The spectrum and period map stop at harmonic 60. The retained-harmonic sum is not a certified all-frequency bound, and the RMS period map is a steady-state screen, whereas reported transient peaks include startup and only the entered iteration count. Increase that count for lightly damped build-up. The plotted period maximum is a sampled maximum over 0.2…10 s.

ISO 8528-5:2025 (sixth edition) is a performance context, not a load-acceptance curve implemented here. Use the gas-engine manufacturer's agreed constant-power load-step/ramp data and check against the standard in force. No standard tables or performance-class limits are reproduced.

References

  • Chaudhary et al., A Pre-Dispatch Resonance Safety Criterion for AI Training Clusters (2026), https://doi.org/10.48550/arXiv.2606.22096 — pulse spectrum, modal forcing and published 39-bus reference amplitudes.
  • Ardestani et al., Provisioning to Runtime Optimization of a 100 MW-Scale AI Cluster, v3 (2026), https://doi.org/10.48550/arXiv.2605.24461 — measured large-cluster behavior and software gap filling, pp. 9–10.
  • Ko and Zhu, Wide-Area Power System Oscillations from Large-Scale AI Workloads, v2 (2026), https://doi.org/10.48550/arXiv.2508.16457 — limitations of a single-mode equivalent for wide-area studies.
  • Li et al., The Unseen AI Disruptions for Power Grids: LLM-Induced Transients (2024), https://doi.org/10.48550/arXiv.2409.11416 — workload-dependent power transients and component power context.
  • ISO 8528-5:2025, sixth edition, Generating sets, https://www.iso.org/standard/85960.html — performance context only; check against the standard in force.
  • Caterpillar, Constant Power Loads, https://www.cat.com/en_US/by-industry/electric-power/Articles/White-papers/constant-power-loads.html — constant-power load acceptance differs from resistive load-bank behavior.

Inputs

InputSymbolUnitDefault
Synchronized acceleratorsN_gpu8192
Compute power per acceleratorP_computeW700
Communication power per accelerator
Use measured barrier-phase power when it stays above true idle.
P_idleW100
Power-chain efficiencyeta_chain0.9
Training periodT_iters1.4
Compute duty fractionduty0.8
Other site loadP_otherMW1
Supply modelsource_kindIslanded gas engines
Nominal frequencyf_nomHz60
Participating source power base
Use the same power base as the inertia constant; for a grid, use a study-derived modal equivalent.
P_baseMW20
Inertia constant on this baseH_inertias2
Governor droop fraction
A value of 0.05 means 5% frequency change for one per-unit power change.
R_droop0.05
Governor and engine response timeT_governors0.25
Frequency-sensitive load damping
Per-unit power change per per-unit frequency change.
D_load1
Grid mode frequencyf_modeHz0.8
Grid modal damping ratiozeta_mode0.05
OEM accepted load-step fraction
Enter the agreed gas-engine step on this power base; no ISO class is assumed.
accepted_step0.3
Site lagging power factorpower_factor0.98
PCC short-circuit ratio
Short-circuit MVA divided by the raw site's peak MVA.
SCR_grid5
Engine-side transient reactance
Per-unit reactance on the participating source base.
X_engine0.15
Thevenin X/R ratioXR_ratio10
Maximum source ramp rateramp_limitMW/s4
BESS one-way efficiencyeta_bess0.96
Usable state-of-charge fractionsoc_window0.8
Pack power-to-energy limit
Use the repeated charge/discharge rating at the required pulse duration.
C_rateh^-12
Dummy-load gap-fill fractionfill_fraction1
Training runtimejob_hoursh24
Allowed frequency deviationdf_limitHz1
Minimum acceptable bus voltagev_minimum0.9
Simulated training iterationsn_cycles24
Playback timet_plays1.15

Results

With the default inputs above, the calc gives:

ResultValue
Site peak-to-peak swing5.4613 MW
Mean raw site load6.2793 MW
Peak raw frequency deviation0.7847 Hz
Peak BESS frequency deviation0.0195 Hz
Peak dummy-load frequency deviation0 Hz
Minimum raw bus voltage0.9971
Minimum BESS bus voltage0.9982
Minimum bidirectional inverter rating4.5512 MW
Required cyclic pack energy excursion0.3392 kWh
Minimum pack energy with power limit2,184.5898 kWh
Mean BESS replenishment power0.0712 MW
Additional dummy energy26.2144 MWh
BESS replenishment energy1.7095 MWh
Peak smoothed source ramp4 MW/s
Oscillatory mode frequency0.6462 Hz
Most influential harmonic1
Largest RMS response in sweep3.1208 s
Frequency and voltage assessmentRaw and BESS meet limits
Battery capacity constraintPack power rating governs
Peak AC battery discharge1.0488 MW
Peak AC battery charge4.5512 MW

Checked against sources

Each case below was calculated by this calc and agrees with the value from its source (within the tolerance where one is shown).

Published 100,000-H100 pulse spectrum

Source: Chaudhary et al., arXiv:2606.22096, Table I (p. 2) and p. 4: 100,000 H100s, 700 W compute, approximately 100 W idle, efficiency 0.90 and duty 0.80. Tolerances cover published rounding; formulas use unrounded 600/0.9 W.

Inputs: Synchronized accelerators = 100,000; Other site load = 0 MW; Supply model = Weak-grid equivalent mode; Participating source power base = 22,115 MW; Simulated training iterations = 4; the others as above.

ResultSourceThis calc
Grid-side swing per accelerator667 W666.7 W
Site peak-to-peak swing66.7 MW66.667 MW
Compute-phase site load77.8 MW77.778 MW
Communication-phase site load11.1 ± 0.05 MW11.111 MW
Raw harmonic peak amplitudes [1]24.9 ± 0.05 MW24.946 MW

Published modal resonance and integrated pulse response

Source: Chaudhary et al., arXiv:2606.22096, pp. 4–5, Table III and Fig. 4: 74.8 mHz fundamental and 74.4 mHz integrated square-wave response. The paper's Eq. (5) gain is mapped to a single equivalent coordinate using H×P_base = E_eq/B², with E_eq=18,060 MW·s and B=0.639; H=2 s gives P_base=22,114.953676 MW. This reproduces that published modal transfer, not the complete 39-bus network. Finite 40 s buildup and rounded source values explain the tolerance.

Inputs: Synchronized accelerators = 100,000; Other site load = 0 MW; Supply model = Weak-grid equivalent mode; Participating source power base = 22,115 MW; Grid mode frequency = 0.6 Hz; Grid modal damping ratio = 0.03; Training period = 1.667 s; Maximum source ramp rate = 40 MW/s; the others as above.

ResultSourceThis calc
Individual raw harmonic frequency amplitudes [1]0.0748 ± 1.5 × 10⁻⁴ Hz0.0748 Hz
Individual raw harmonic frequency amplitudes [2]0.0024 ± 5 × 10⁻⁵ Hz0.002419 Hz
Peak raw frequency deviation0.0744 ± 3 × 10⁻⁴ Hz0.07434 Hz

Published detuned first and second harmonics

Source: Chaudhary et al., arXiv:2606.22096, p. 5: at a 2.5 s training period the fundamental is 5.4 mHz and the second harmonic 6.2 mHz. Same E_eq/B² gain mapping as the resonant case. The paper's settled 10.1 mHz waveform maximum is not compared with this tool's full-run maximum, which includes the initial pickup transient.

Inputs: Synchronized accelerators = 100,000; Other site load = 0 MW; Supply model = Weak-grid equivalent mode; Participating source power base = 22,115 MW; Grid mode frequency = 0.6 Hz; Grid modal damping ratio = 0.03; Training period = 2.5 s; Maximum source ramp rate = 40 MW/s; Simulated training iterations = 8; the others as above.

ResultSourceThis calc
Individual raw harmonic frequency amplitudes [1]0.0054 ± 6 × 10⁻⁵ Hz0.005372 Hz
Individual raw harmonic frequency amplitudes [2]0.0062 ± 6 × 10⁻⁵ Hz0.006192 Hz

Lossless full-period buffer: independent energy-area limit

Source: Independent conservation limit derived here: a 1 MW rectangular swing at 50% duty and T=2 s, averaged over one full period, has constant source power. Battery power is ±0.5 MW and the area of either half-cycle is 0.5 MW·s = 0.1388889 kWh. This analytic area check is independent of the breakpoint integration implementation; it is not a published measurement.

Inputs: Synchronized accelerators = 1,500; Other site load = 0 MW; Training period = 2 s; Compute duty fraction = 0.5; Maximum source ramp rate = 0.5 MW/s; BESS one-way efficiency = 1; Simulated training iterations = 4; the others as above.

ResultSourceThis calc
Minimum bidirectional inverter rating0.5 MW0.5 MW
Required cyclic pack energy excursion0.1389 kWh0.1389 kWh
Mean BESS replenishment power0 MW0 MW
Peak smoothed source ramp0 MW/s0 MW/s
Raw harmonic peak amplitudes [2]0 ± 1 × 10⁻¹² MW3.898 × 10⁻¹⁷ MW

Fast transient peaks survive an 80-cycle horizon

Source: Independent review regression, reproduced with Python SciPy 1.15.3 solve_ivp RK45, rtol=2e-11, atol=1e-13, maximum step 0.002 s and derivative-zero events. First-two-cycle raw maximum is 0.3283315933 Hz at 8.0090441413 s; buffered maximum is 0.2829150153 Hz at 0.0089947906 s. An 80-cycle run must retain these peaks. Program: catalog/.work/ai-training-power-swings/peak-regression.py. This is a separate numerical solution of the same equations, not a published measurement.

Inputs: Training period = 10 s; Inertia constant on this base = 0.1 s; Governor and engine response time = 0.02 s; Governor droop fraction = 0.01; Frequency-sensitive load damping = 20; Allowed frequency deviation = 0.2 Hz; Simulated training iterations = 80; the others as above.

ResultSourceThis calc
Peak raw frequency deviation0.3283 Hz0.3283 Hz
Peak BESS frequency deviation0.2829 Hz0.2829 Hz

Overdamped continuous extrema

Source: Independent SciPy 1.15.3 RK45 solution with derivative-zero event location (peak-regression.py). Raw maximum at 8.0683723533 s, buffered maximum at 9.3872394560 s. Verifies the two-real-pole branch rather than the oscillatory formula.

Inputs: Inertia constant on this base = 0.1 s; Governor and engine response time = 3 s; Governor droop fraction = 0.15; Frequency-sensitive load damping = 20; Simulated training iterations = 2; Training period = 10 s; the others as above.

ResultSourceThis calc
Peak raw frequency deviation0.6899 Hz0.6899 Hz
Peak BESS frequency deviation0.6424 Hz0.6424 Hz

Critical-damping continuous extrema

Source: Independent SciPy 1.15.3 RK45 solution with derivative-zero events (peak-regression.py). Repeated poles at -3 s⁻¹: raw maximum at 8.5000000001 s, buffered maximum at 9.5551023183 s. Confirms the repeated-pole limit without dividing by a zero modal frequency.

Inputs: Inertia constant on this base = 1 s; Governor and engine response time = 1 s; Governor droop fraction = 0.125; Frequency-sensitive load damping = 10; Simulated training iterations = 2; Training period = 10 s; the others as above.

ResultSourceThis calc
Peak raw frequency deviation1.134 Hz1.134 Hz
Peak BESS frequency deviation0.9755 Hz0.9755 Hz

Related Resources

Responses

Your email address will not be published. Required fields are marked *

L ading...