# US 2020/0401093 A1 · Hybrid system-on-chip for power and performance prediction and control

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2020/0401093 A1
- Document ID: US20200401093A1
- Status: Published application
- Kind: A1
- Application number: 16/968,460
- Filed: 2018-02-08
- Published: 2020-12-24
- Earliest claimed: 2018-02-08
- Assignees: Alibaba Group Holding Limited
- Applicants: Alibaba Group Holding Limited
- Inventors: Jun Song; Yi Liu; Lingling Jin; Guan Wang; Ying Wang; Hong Tang; Nan Zhang; Zhengxiong Tian; Yu Zhou; Chao Qian; Shuiwang Liu; Jun Ruan; Bo Yang; Lin Yu; Jiangwei Huang; Hong Zhou; Yijun Lu; Shao Xu; Shiwei Li; Xiaoli Meng
- Web page: https://patentgrep.com/patent/US20200401093A1

## CPC

- G06F 9/5066: {Algorithms for mapping a plurality of inter-dependent sub-tasks onto a plurality of physical CPUs (mappping at compile time, see G06F8/451)}
- G06F 15/7807: {System on chip, i.e. computer system on a single chip; System in package, i.e. computer system on one or more chips in a single package}
- G05B 19/042: using digital processors (G05B19/05 takes precedence)
- G06F 1/206: {comprising thermal management}
- G06F 1/30: Means for acting in the event of power-supply failure or interruption, e.g. power-supply fluctuations (for resetting only G06F1/24)
- G06F 1/3206: Monitoring of events, devices or parameters that trigger a change in power modality
- G06F 1/324: by lowering clock frequency
- G06F 3/064: {Management of blocks}
- G06F 9/4484: {Executing subprograms}
- G06F 9/4881: {Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues}
- G06F 9/5011: {the resources being hardware resources other than CPUs, Servers and Terminals}
- G06F 9/5094: {where the allocation takes into account power or heat criteria (power management in computers in general G06F1/3203; thermal management in computers in general G06F1/206)}
- G06F 16/2471: {Distributed queries}
- G06N 5/02: Knowledge representation; Symbolic representation
- H04W 12/122: Counter-measures against attacks; Protection against rogue devices
- G05B 2219/2639: Energy management, use maximum of cheap power, keep peak load low
- G06F 2209/5019: Workload prediction
- G06F 2209/508: Monitor
- H04L 9/0618: {Block ciphers, i.e. encrypting groups of characters of a plain text message using fixed encryption transformation}
- H04L 12/12: Arrangements for remote connection or disconnection of substations or of equipment thereof
- Y02D 10/00: Energy efficient computing, e.g. low power processors, power management or thermal management
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G05B: CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS (systems for controlling or regulating non-electric variables G05D; systems for regulating electric or magnetic variables G05F; control devices or systems insofar as characterised by mechanical features only G05G)
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- Y02D: CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE

## Abstract

Systems and methods for a hybrid system-on-chip usable for predicting performance and power requirements of a host server include a big cores module, including central processing units, for receiving and pre-processing performance and power metrics data of the host server and to allocate computing resources, a small cores module, including massively parallel processing units, for mapping each instance associated with host server in the performance and power metrics data to a corresponding massively parallel processing unit based on the allocated computing resources for a per-instance metrics calculation, and an artificial intelligence (AI) accelerator for calculating performance and power prediction results based on the per-instant calculations from the small cores module.

## Claims

### Claim 1

A device for predicting performance and power (PnP) requirements of a host server, the device comprising:
a big cores module including a plurality of general purpose central processing units (CPUs), the big cores module configured to receive and pre-process PnP metrics data of the host server and to allocate computing resources for calculating the PnP requirements;
a small cores module including a plurality of massively parallel processing (MPP) units, the small cores module coupled to the big cores module, the small cores module configured to map each instance associated with host server in the PnP metrics data to a corresponding MPP unit based on the allocated computing resources for a per-instance metric calculation; and
an artificial intelligence (AI) accelerator coupled to the big cores module and the small cores modules, the AI accelerator configured to calculate PnP prediction results based on the per-instant calculations from the small cores module and to send the PnP prediction results to the big cores module.

### Claim 2 (depends on 1)

The device of claim 1, wherein the small cores module is further configured to perform rule-based prediction, generate rule-based prediction results, and send the rule-based prediction results to big cores module.

### Claim 3 (depends on 1)

The device of claim 1, wherein the big cores module is coupled to the host server via a host interface, the big cores module further configured to send the PnP prediction results to the host server via the host interface.

### Claim 4 (depends on 3)

The device of claim 3, wherein a software agent running on the host server is configured to collect the PnP metrics data to be sent to the big cores module and receive the PnP prediction results from the big cores module.

### Claim at position 5

-10. (canceled)

### Claim 11

A method for predicting performance and power (PnP) requirements of a host server, the method comprising:
receiving and pre-processing, by a big cores module of a device, PnP metrics data of the host server, the big cores module including a plurality of general purpose central processing units (CPUs);
allocating, by the big cores module, computing resources for calculating the PnP requirements;
mapping, by a small cores module of the device, each instance associated with host server in the PnP metrics data to a corresponding massively parallel processing (MPP) unit based on the allocated computing resources for a per-instance metric calculation, the small cores module including a plurality of MPP units;
calculating, by an artificial intelligence (AI) accelerator of the device, PnP prediction results based on the per-instant calculations from the small cores module; and
sending, by the AI accelerator, the PnP prediction results to the big cores module.

### Claim 12 (depends on 11)

The method of claim 11, further comprising:
performing, by the small cores module, rule-based prediction to generate rule-based prediction results, and
sending, by the small cores module, the rule-based prediction results to the big cores module.

### Claim 13 (depends on 11)

The method of claim 11, further comprising:
sending, by the big cores module, the PnP prediction results to the host server via a host interface.

### Claim 14 (depends on 13)

The method of claim 13, further comprising:
collecting, by a software agent running on the host server, the PnP metrics data to be sent to the big cores module; and
receiving, by the software agent, the PnP prediction results from the big cores module via the host interface.

### Claim 15 (depends on 14)

The method of claim 14, wherein:
collecting, by a software agent running on the host server, the PnP metrics data to be sent to the big cores module includes collecting the PnP metrics data at a predetermined collection frequency; and
receiving, by the software agent, the PnP prediction results from the big cores module includes receiving the PnP prediction results from the big cores module at a predetermined receiving frequency.

### Claim 16 (depends on 14)

The method of claim 14, further comprising:
generating, by the software agent, hardware PnP control options and parameters for the hardware PnP control options based on the PnP prediction results.

### Claim 17 (depends on 16)

The method of claim 16, further comprising:
applying, by the software agent, the hardware PnP control options to hardware components of the host server.

### Claim 18 (depends on 14)

The method of claim 14, further comprising:
revising, by the software agent, a scheduler algorithm based on the PnP prediction results.

### Claim 19 (depends on 18)

The method of claim 18, further comprising:
applying, by the software agent, the revised scheduler algorithm to software components of the host server.

### Claim 20 (depends on 11)

The method of claim 11, wherein the device is a hybrid system on chip (SoC).

### Claim 21

A non-transitory computer-readable storage medium storing computer-readable instructions executable by one or more processors, that when executed by the one or more processors, cause the one or more processors to perform operations comprising:
collecting performance and power (PnP) metrics data of a host server;
transmitting the PnP metrics data, via a host interface, to a big cores module of a device, the big cores module including a plurality of general purpose central processing units (CPUs);
pre-processing, by the big cores module, the PnP metrics data;
allocating, by the big cores module, computing resources for calculating the PnP requirements;
mapping, by a small cores module of the device, each instance associated with host server in the PnP metrics data to a corresponding massively parallel processing (MPP) unit based on the allocated computing resources for a per-instance metric calculation, the small cores module including a plurality of MPP units;
calculating, by an artificial intelligence (AI) accelerator of the device, PnP prediction results based on the per-instant calculations from the small cores module;
sending, by the AI accelerator, the PnP prediction results to the big cores module;
receiving, by the big cores module, the PnP prediction results from the AI accelerator;
sending, by the big cores module, the PnP prediction to the host server via the host interface; and
receiving the PnP prediction results from the big cores module.

### Claim 22 (depends on 21)

The non-transitory computer-readable storage medium of claim 21, wherein the operations further comprise:
generating hardware PnP control options and parameters for the hardware PnP control options based on the PnP prediction results.

### Claim 23 (depends on 22)

The non-transitory computer-readable storage medium of claim 22, wherein the operations further comprise:
applying the hardware PnP control options to hardware components of the host server.

### Claim 24 (depends on 21)

The non-transitory computer-readable storage medium of claim 21, wherein the operations further comprise:
revising a scheduler algorithm based on the PnP prediction results; and
applying the revised scheduler algorithm to software components of the host server.

### Claim 25 (depends on 21)

The non-transitory computer-readable storage medium of claim 21, wherein the operations further comprise:
performing, by the small cores module, rule-based prediction to generate rule-based prediction results, and
sending, by the small cores module, the rule-based prediction results to the big cores module.

### Claim 26 (depends on 21)

The non-transitory computer-readable storage medium of claim 21, wherein the device is a hybrid system-on-chip (SoC).

### Claim at position 22

-78. (canceled)
