Software Switch Dynamic CPU Frequency Adjustment

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Cloud systems face high power consumption and unnecessary heating due to continuous polling by virtual machines, leading to increased energy costs and environmental impact.

Innovation Solution

A software switch that adjusts the clock frequency of CPUs based on the number of packets in the queue, reducing power consumption by decreasing frequency during low load and increasing it during high load, thereby managing power usage efficiently.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If the virtual machine continuously polls the virtual port for packets, then the virtual machine can communicate with entities outside the host machine, but the CPU will be very busy and power consumption will be high

Engineering Contradiction:
Improvecommunication capabilityVSAvoidpower consumption
Core Design Contradiction:
ReliabilityVSUse of energy by moving object

Solution Approach 1:

The patent implements discontinuous polling where the virtual machine polls the virtual port at periodic intervals rather than continuously. The software switch monitors queue depth and only triggers polling when packets are available, converting continuous polling into periodic action based on actual traffic conditions.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The patent dynamically adjusts the polling behavior based on queue depth. When the packet queue is empty, polling is suspended or reduced; when packets arrive, polling is activated. This dynamic adaptation allows the system to maintain communication reliability while minimizing unnecessary CPU activity and power consumption during low-traffic periods.

Inventive Principle:
Principle #15Dynamics

2Speed

If the virtual machine continuously polls the virtual port for packets, then packets can be processed promptly, but CPU and surrounding electronics will heat up requiring additional cooling power

Engineering Contradiction:
Improvepacket processing speedVSAvoidCPU temperature
Core Design Contradiction:
SpeedVSTemperature

Solution Approach 1:

The system uses event-driven periodic polling triggered by queue depth thresholds. Instead of continuous polling that generates constant heat, the virtual machine polls only when packets are available in the queue, reducing thermal generation while maintaining packet processing speed when needed.

Inventive Principle:
Principle #19Periodic action

Solution Approach 2:

The patent changes the operational parameters of the polling mechanism based on traffic conditions. The polling frequency and activation state are adjusted as parameters based on queue depth, allowing the system to optimize between processing speed and thermal management by scaling activity levels to match actual workload.

Inventive Principle:
Principle #35Parameter changes

3Productivity

If the clock frequency of the CPU is increased to handle high packet load, then packet processing capability improves, but power consumption increases

Engineering Contradiction:
Improvepacket processing capabilityVSAvoidCPU power consumption
Core Design Contradiction:
ProductivityVSUse of energy by moving object

Solution Approach 1:

The patent implements dynamic clock frequency adjustment where the CPU frequency is scaled based on actual packet queue depth. During high-traffic periods, frequency increases to maximize processing capability; during low-traffic periods, frequency decreases to reduce power consumption. This dynamic scaling aligns computational resources with actual workload demands.

Inventive Principle:
Principle #15Dynamics

Solution Approach 2:

The system dynamically changes the clock frequency parameter in response to queue depth measurements. The software switch monitors packet accumulation and adjusts CPU frequency accordingly, transforming the static frequency into a dynamic parameter that adapts to traffic conditions, thereby optimizing the trade-off between productivity and energy consumption.

Inventive Principle:
Principle #35Parameter changes

Data Source

PatentUS11579678B2Software switch and method therein
Publication Date: 2023.02.14 TELEFONAKTIEBOLAGET LM ERICSSON (PUBL)
  • US11579678B2 patent drawing
  • US11579678B2 patent drawing
  • US11579678B2 patent drawing

AI summary

A software switch and a method performed by the software switch are disclosed. The software switch receives, from a node deploying a virtual machine, a request for a virtual port to be polled by the virtual machine. The request includes a Central Processing Unit “CPU” identity identifying a CPU on which the virtual machine executes. The request includes an indication of a clock frequency at which the CPU is set to operate. The software switch determines a number of packets in a queue associated with the virtual port. The software switch adjusts the clock frequency of the CPU based on the number of packets in the queue. A corresponding computer program and a computer program carrier are also disclosed.