Carbon-Aware Routing
MVP Demo • National AI Infrastructure
Live
--:-- --
Route by Carbon Intensity, Not Just Latency
Traditional routing sends workloads to the fastest data center. Carbon-aware routing sends flexible workloads to the cleanest grid—capturing renewable energy that might otherwise be curtailed. This demo shows how the same workload can have dramatically different emissions depending on where it runs.
Baseline Assumptions & Methodology
US GRID AVERAGE (BASELINE)
400 gCO₂/kWh
EPA eGRID 2023 national average
CARBON CALCULATION
kg CO₂ = MWh × gCO₂/kWh
Real-time grid intensity from WattTime/EIA
SAVINGS CALCULATION
saved = worst_option - best_option
Compares cleanest vs dirtiest available
DATA SOURCES (Production Implementation)
WattTime APIElectricity MapsEIA Hourly GridCAISO OASISERCOT Grid Data
1
Configure Workload
2
Current Grid Conditions at DOE Facilities
(Simulated — updates every 5 seconds)| Facility | Grid Region | Carbon Intensity | Renewable % | Latency from Origin | Status |
|---|
Clean (<200 gCO₂/kWh)
Moderate (200-350)
High (>350)
4
Automated Routing Rules (Protocol Layer)
In production, these rules execute automatically. Every routing decision generates a cryptographic receipt for audit and compliance.
function routeWorkload(workload, facilities) { // Get real-time carbon intensity for each facility const options = facilities.map(f => ({ facility: f, carbon: getGridCarbon(f.grid_region), // gCO₂/kWh from WattTime API latency: measureLatency(f.endpoint), // ms round-trip from origin renewable: getRenewablePct(f.grid_region) )); // Apply routing strategy based on workload flexibility if (workload.flexibility === 'flexible') { // CARBON-OPTIMIZED: Route to cleanest grid return options.sort((a, b) => a.carbon - b.carbon)[0]; } else if (workload.flexibility === 'urgent') { // LATENCY-OPTIMIZED: Route to fastest response return options.sort((a, b) => a.latency - b.latency)[0]; } else { // BALANCED: Weighted score (carbon × 0.6 + latency × 0.4) return options.sort((a, b) => score(a) - score(b))[0]; } } // Every decision emits a signed receipt emitReceipt({ decision, carbon_metrics, timestamp, signature });