A survey of design techniques for system-level dynamic power management | Synapse