OFF GRID LABS ← ALL DISPATCHES
FIELD NOTES9 MIN READ

A battery is not redundancy.

How two NVIDIA DGX Sparks, LFP storage, and a small generator can keep critical local AI alive when the grid—and the cloud—go dark.


// THE SHORT VERSION
  • Two fully loaded DGX Sparks draw about 466 watts combined; a compact protected bus can reasonably be planned around roughly 600 watts after support equipment and losses.
  • The battery carries transitions and short outages. The generator replenishes energy when the outage lasts longer than the battery.
  • Two Sparks are redundant only when either one can run the complete critical workload. A model split across both units is one larger computer.
  • Real resilience includes networking, storage, model copies, identity, queues, cooling, and recovery procedures—not only compute and batteries.

Plugging an NVIDIA DGX Spark into a portable power station is easy.

Building an AI service that survives a long outage is not.

A battery can prevent a reboot. It cannot survive a failed inverter, a dead switch, a corrupted model store, or a two-node model that needs both computers to answer. A generator can refill a battery. It cannot create software failover. Two computers can double capacity without adding redundancy at all.

Resilience starts when we stop counting boxes and start drawing failure domains.

The compute is large. The electrical load is small.

Each DGX Spark has 128 GB of unified memory, 10 Gb Ethernet, ConnectX-7 networking, and support for models up to 200 billion parameters on one unit. NVIDIA describes approximately 405-billion-parameter operation across two Sparks.

NVIDIA supplies a 240-watt adapter. Its regulatory documentation reports 233.2 watts at maximum load and 38 watts at idle for the complete system. Two Sparks therefore have a published combined ceiling of about 466 watts. Add the router, switch, local storage, monitoring, ventilation, and conversion losses, and 600 watts is a useful first planning load for a compact two-node critical bus.

Do not size from the Spark's processor figure. Size from the complete system, measured workload, supplied adapters, and every device required to keep the service usable. The nominal 48-volt device rating is also not permission to connect a battery directly; use NVIDIA's approved power adapter.

Size energy from average load. Size equipment from peak load.

Battery runtime begins with a simple planning equation:

Battery kWh = load kW × required hours ÷ usable fraction ÷ conversion efficiency

Using a 600-watt critical load, 80% usable battery capacity, and 90% conversion efficiency:

Battery-only autonomyCalculated nominal storagePractical planning point
4 hours3.3 kWhShort outage / generator bridge
12 hours10 kWhOvernight continuity
24 hours20 kWhOne dark day before refueling

These are planning calculations, not equipment specifications. Temperature, battery age, auxiliary loads, charger behavior, shutdown reserve, and measured duty cycle determine actual runtime.

Use measured average watts to calculate hours. Use maximum load, charger demand, startup behavior, wiring limits, and expansion headroom to size the inverter, protection, and generator.

The battery carries the outage. The generator carries the calendar.

GRID and/or SOLAR SMALL GENERATOR \ / protected source inputs | inverter / charger | LFP battery + BMS | protected AC bus / \ Spark A Spark B \ / local network · data · API

The battery becomes the immediate source when utility or solar disappears. It bridges generator startup, absorbs load changes, and gives the control system time to decide what stays on. The generator then feeds the inverter/charger and restores battery energy.

That architecture is better than making the AI ride directly on raw generator transitions. For higher criticality, each Spark can sit behind its own online double-conversion UPS or protected downstream branch. An online UPS continuously rebuilds its output and has no transfer interval when input power disappears.

// IMPORTANT DISTINCTION

A shared battery, inverter, BMS, and bus provide continuous power, but they remain one shared power failure domain. Fully independent power requires separation farther upstream.

A little generator is enough—when it is doing the right job.

A representative 2.2 kW portable inverter generator may provide only 1.8 kW continuously. That can support a roughly 600-watt AI bus and limited charging. It cannot support 600 watts of live load plus an uncontrolled 1.5 kW charger with healthy reserve.

For a two-Spark node, a generator around the 3 kW continuous class creates a better envelope: critical load, controlled charging, conversion losses, and transient margin. Continuous output matters more than the larger surge number printed on the enclosure.

A recoil-start camping generator is an attended emergency charger, not autonomous infrastructure. Unattended endurance needs compatible electric or remote start, low-state-of-charge control, warm-up and cool-down logic, generator-aware input-current limiting, fuel monitoring, periodic exercise, and a documented manual path.

Portable generators remain outdoors, at least 20 feet from doors, windows, and vents, with exhaust directed away from occupied buildings. Fixed wiring needs approved transfer equipment and a qualified electrician. Never backfeed a building through an improvised cord.

Two Sparks can be redundant. A two-Spark model is not.

If the critical model fits on either Spark, keep a complete copy on both nodes and put them behind a health-aware local endpoint. One can be active and one warm, or both can serve requests.

If a large model is sharded across two Sparks, both are required to answer. The pair is one larger computer. Losing either machine loses the service. True redundancy for that workload requires two independent two-node groups—four Sparks—or a smaller fallback model that fits completely on either individual node.

NVIDIA's clustering support increases memory and throughput. It does not automatically create high availability. The service still needs replicated weights, health checks, routing, durable task ownership, and recovery logic.

Protect the complete service.

The router, switch, local DNS, storage, authentication, monitoring, and communications path all belong on protected power. Keep model weights, containers, retrieval indexes, source documents, recovery images, and operating procedures on site. Avoid one shared NAS as the only copy.

Agent work needs a durable queue outside the worker process. Tool calls should be idempotent or transaction-logged so failover does not repeat a payment, deletion, message, or equipment command. A warm spare is useful only when it inherits the right job state.

Cooling is also part of availability. The Spark's electrical load becomes heat inside the enclosure. A cabinet designed only for battery warmth can cook the compute; a ventilated cabinet can expose LFP batteries to low-temperature charging conditions. Treat the battery and compute as adjacent systems with different thermal requirements.

The node should get smaller before it goes dark.

At full charge, keep both replicas warm. As state of charge falls, stop fine-tuning, embeddings, and batch work first. Then reduce concurrency, camera frame rate, and context size. Switch to a smaller quantized model. At critical reserve, preserve only local retrieval, communications, security, and essential monitoring before checkpointing and shutting down cleanly.

Power policy should be deterministic. State of charge, runtime estimate, generator status, and service priority select the operating tier. Do not ask the language model whether the battery feels low enough to turn itself off.

Three reference architectures

Use caseComputePowerOperating model
Home lab1 Spark3–5 kWh LFP; attended small generatorSafe shutdown and manual recovery
Small-business critical node2 independent Sparks10–20 kWh LFP; controlled 3 kW-class generator; protected branchesWarm failover and degraded local service
Higher-availability local AI4 Sparks as two independent pairsSeparate battery/inverter branches; automatic generation; duplicated network and storageLarge-model continuity with no single compute node required

Reference architectures show failure-domain logic, not a permit-ready electrical design. Final equipment selection depends on code, site conditions, ambient temperature, fuel strategy, and measured workload.

Run the dark test.

Complete the first Spark setup on stable power; NVIDIA warns against interrupting initial installation. Before remote deployment, verify automatic boot after power loss, model autostart, local routing, and recovery media.

Then pull the grid under load. Refuse the first generator start. Remove one Spark. Reboot the switch. Corrupt one local model copy. Disconnect the WAN. Restore service with queued work waiting. The test passes only when the critical endpoint remains available or fails into a known, honest state—and every interrupted job is visible afterward.

Track actual watts, battery runtime, generator starts, failed starts, recharge time, node readiness, failover time, queue age, model reload time, thermal alarms, and manual interventions. Redundancy exists only after the failure test proves it.

Own the model. Own the data. Own the power path. Then prove the system still works when one of them disappears.

FAQ

How much battery storage do two DGX Sparks need?

At a 600-watt planning load, roughly 3.3 kWh supports four hours, 10 kWh supports twelve hours, and 20 kWh supports twenty-four hours under the conservative assumptions used above. Measure the installed system before final sizing.

Can a 2.2 kW generator run two Sparks?

Yes, a unit with about 1.8 kW continuous output can carry a roughly 600-watt bus plus limited battery charging. The charger must be current-limited, and additional loads can erase the reserve quickly.

Do two DGX Sparks create automatic failover?

No. Either node must be able to run the complete critical workload, and a router or service layer must detect failure and move requests. A model sharded across both units requires both and is not redundant.

Should the Sparks run directly from the generator?

The preferred arrangement uses a battery-inverter or online UPS as the continuous protected bus, while the generator restores energy. This bridges startup and isolates the compute from upstream transitions.

// BUILD THE NODE

Stop renting your resilience. Own the complete system.

OFF GRID LABS © 2026 · OWN YOUR AIRETURN TO HOME →