User-Space Data Plane Power Scaling for Packet Polling Load
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Data plane applications in user space experience high dc power consumption due to the high duty cycle of polling for data packets, necessitating efficient dynamic power management.
Innovation Solution
Implement real-time monitoring of IO rings to determine system states and transition processing engines between active and offline states, adjust clock frequencies, polling frequencies, and introduce sleep cycles to optimize power usage based on traffic load.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Productivity
If polling is used to ingest data packets from network interface, then data packets can be continuously monitored and processed, but dc power consumption increases due to high duty cycle
Solution Approach 1:
The system dynamically transitions processing engines between active and offline states based on real-time monitoring of IO ring depth. When traffic load is low, processing engines go offline to save power; when traffic load increases, they activate to handle packets. This dynamic state adjustment resolves the contradiction between continuous monitoring capability and power consumption.
Solution Approach 2:
Instead of continuous polling, the system uses periodic interrupt-driven actions. Processing engines are awakened by interrupts only when data packets arrive in the network interface, rather than continuously checking the IO rings. This periodic action pattern maintains data packet processing capability while dramatically reducing average power consumption.
2Use of energy by moving object
If processing engines are transitioned to offline state to reduce power consumption, then dc power consumption decreases, but data packet processing capability may be compromised
Solution Approach 1:
The system continuously monitors IO ring depth as feedback about traffic load conditions. Based on this feedback, it makes informed decisions about transitioning processing engines to offline or active states. This feedback mechanism ensures that processing engines remain offline only when appropriate (low traffic), maintaining reliability while saving power.
Solution Approach 2:
The system preliminarily transitions processing engines to offline state when traffic load is low, preparing them for power savings before traffic increases. When interrupts indicate incoming packets, the engines quickly activate to handle the traffic, ensuring no data is lost while maximizing power savings during idle periods.
3Use of energy by moving object
If clock frequency is scaled down for remaining active processing engines, then power consumption decreases, but processing speed reduces
Solution Approach 1:
The system changes the clock frequency parameter of processing engines based on traffic load conditions. When traffic load is low, clock frequency is scaled down to reduce power consumption. When traffic load increases, clock frequency is restored to maintain processing speed. This parameter adjustment resolves the contradiction between power consumption and processing speed.
Data Source
AI summary
Aspects of the disclosure are directed to dynamic power management. In accordance with one aspect, the disclosure includes determining a system state using real-time monitoring of a plurality of input/output (IO) rings; transitioning a subset of a plurality of processing engines to an offline state to decrease from a quantity of the plurality of processing engines in an active power state to a remaining quantity; determining if a software-based data plane is required in the plurality of processing engines that remain in the active power state; and transitioning a data path hardware mode and a plurality of packet data flows for the remaining quantity.


