CPU power management for virtualized radio access networks
Methods and apparatuses for improving the performance and energy efficiency of Radio Access Networks (RANs) are described. Various power control schemes may dynamically adjust RAN power consumption based on fluctuations in network traffic, throughput, latency, queue sizes, and/or packet error rates with the goal of increasing energy efficiency while maintaining quality of service metrics. The power control schemes may be implemented using a PRB controller for dynamically allocating physical resource blocks (PRBs) to user devices and a CPU controller for assigning CPU power profiles based on PRB allocations for the user devices. The PRB controller and CPU controller may periodically acquire real-time telemetry data and wireless network performance information and then adjust the number of PRBs for user devices and adjust the CPU power profiles for executing RAN functions based on the telemetry data and wireless network performance information.
1 . A system for optimizing power consumption of a radio access network, 1 . comprising:
a storage device configured to store a plurality of CPU power profiles; and
one or more processors in communication with the storage device, the storage device storing thereon computer-executable instructions, that, when executed by the one or more processors, cause the system to perform operations comprising:
detecting a change in user device traffic between the radio access network and a user device;
determining a number of physical resource blocks for transmitting data between the radio access network and the user device;
acquiring a quality of service metric for the user device traffic between the radio access network and the user device;
identifying a first CPU power profile out of the plurality of CPU power profiles that provides a CPU configuration for the radio access network that satisfies the quality of service metric given the number of physical resource blocks with the lowest power consumption; and
configuring the radio access network using the first CPU power profile.
2 . The system of claim 1 , further comprising computer-executable instructions, that, when executed by the one or more processors, cause the system to perform operations comprising:
configuring the radio access network using the first CPU power profile prior to an increase in the number of physical resource blocks used for transmitting data between the radio access network and the user device.
3 . The system of claim 1 , further comprising computer-executable instructions, that, when executed by the one or more processors, cause the system to perform operations comprising:
detecting an increase in user device traffic between the radio access network and the user device; and
determining the number of physical resource blocks for transmitting data between the radio access network and the user device in response to detecting the increase in user device traffic between the radio access network and the user device.
4 . The system of claim 1 , wherein:
the quality of service metric for the user device traffic between the radio access network and the user device comprises a threshold network latency for data transmissions between the radio access network and the user device.
5 . The system of claim 1 , further comprising computer-executable instructions, that, when executed by the one or more processors, cause the system to perform operations comprising:
detecting a reduction in user device traffic between the radio access network and the user device; and
configuring the radio access network using the first CPU power profile after a reduction in the number of physical resource blocks used for transmitting data between the radio access network and the user device.
6 . The system of claim 1 , wherein:
the radio access network comprises a virtualized radio access network;
the storage device comprises a semiconductor memory; and
the user device comprises a mobile phone.
7 . The system of claim 1 , wherein:
the first CPU power profile specifies a number of CPU cores and corresponding CPU frequencies for each of the CPU cores.
8 . The system of claim 1 , further comprising computer-executable instructions, that, when executed by the one or more processors, cause the system to perform operations comprising:
identifying the first CPU power profile out of the plurality of CPU power profiles by exhaustively searching the plurality of CPU power profiles for a CPU profile with the lowest power consumption that is capable of satisfying the quality of service metric for the user device traffic between the radio access network and the user device.