Modular design for large-scale AI training with energy transparency and grid resilience
| Register | Type | Description | Range/Options |
|---|---|---|---|
| POWER_CAP | uint32_t | Maximum allowed power in milliwatts | 0 - TDP |
| ENERGY_BUDGET | uint64_t | Allowed energy consumption in microjoules | 0 - UINT64_MAX |
| FREQ_CEILING | uint16_t | Maximum allowed frequency in MHz | MinFreq - MaxFreq |
| SM_CONCURRENCY | uint8_t | Maximum concurrent SMs (0 = auto) | 0 - TotalSMs |
| MEM_BW_LIMIT | uint16_t | Memory bandwidth limit as percentage | 10 - 100 |
| DEADLINE_HINT | uint64_t | Completion deadline in microseconds | 0 (no deadline) - UINT64_MAX |
| ELASTICITY | uint8_t | Allowed scheduling flexibility (0-100) | 0 (rigid) - 100 (elastic) |
| ABI_VERSION | uint16_t | Interface version (read-only) | 0x0100 (v1.0) |
The ABI uses semantic versioning where the upper byte represents major version (breaking changes) and lower byte represents minor version (backward-compatible additions). Hardware must maintain backward compatibility with at least the previous major version.
High carbon intensity → Reduce POWER_CAP, increase ELASTICITY
Low battery → Strict ENERGY_BUDGET, adjust FREQ_CEILING
Tight deadline → Maximize SM_CONCURRENCY, relax POWER_CAP
Extend existing simulators (Gem5, SST) with energy models for each hardware domain. Implement ABI as simulated registers with appropriate timing.
Model the full stack in Python/SimPy with abstract timing. Focus on control flow between layers and constraint propagation.
Use FPGAs to prototype the control interface with simplified compute elements. Enables validation of real-time constraints.
Risk of baking forecasting assumptions into silicon. Mitigate by keeping ABI minimal and versioned.
Fine-grained telemetry increases energy costs. Need optimal sampling rates and aggregation.
Clear interfaces required between layers while maintaining system-wide optimization potential.
Poor predictions may lead to inefficient execution. Need adaptive models and fallback modes.
Grid signals (minutes) vs hardware control (μs) require careful temporal hierarchy design.
Future accelerators may need new control knobs. ABI must accommodate via versioning.
New capabilities can be discovered via capability registers without breaking existing implementations.
Unsupported controls should degrade gracefully (e.g., ignore elasticity hints if not supported).
Reserved registers and structure padding allow for future expansion without layout changes.