# US 2022/0279031 A1 · Thermal state inference based frequency scaling

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

- Number: US 2022/0279031 A1
- Document ID: US20220279031A1
- Status: Published application
- Kind: A1
- Application number: 17/747,843
- Filed: 2022-05-18
- Published: 2022-09-01
- Earliest claimed: 2019-03-30
- Assignees: Snap Inc.
- Applicants: Snap Inc.
- Inventors: Michael Cieslak; Michael David Marr
- Web page: https://patentgrep.com/patent/US20220279031A1

## CPC

- G06F 9/4893: {taking into account power or heat criteria (power management in computers in general G06F1/3203; thermal management in computers in general G06F1/206)}
- G06F 1/203: {for portable computers, e.g. for laptops}
- G06F 1/206: {comprising thermal management}
- G06F 1/324: by lowering clock frequency
- G06F 1/3243: {Power saving in microcontroller unit}
- G06F 9/3555: {using scaling, e.g. multiplication of index}
- H04L 67/12: specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)

## Abstract

The systems and methods monitor thermal states associated with a device. The systems and methods set thermal thresholds associated with the device. The systems and methods infer the thermal thresholds from information gathered by a client application running on the device. The systems and methods implement a stored policy associated with a violation of one of the thermal thresholds by one of the monitored thermal states.

## Claims

### Claim 1

A method comprising:
monitoring, by a server, a thermal state of a client device;
determining, by the server, if the thermal state violates a thermal threshold;
selecting a stored policy associated with the monitored thermal state if the thermal state violates the thermal threshold; and
communicating, by the server, the selected stored policy to a client application on the client device for implementation by a processor of the client device.

### Claim 2 (depends on 1)

The method of claim 1, wherein the server receives the thermal threshold from the client device.

### Claim 3 (depends on 1)

The method of claim 1, wherein the server comprises a thermal management system.

### Claim 4 (depends on 3)

The method of claim 3, wherein the thermal management system includes a monitoring module and a policy enforcement module.

### Claim 5 (depends on 4)

The method of claim 4, wherein the monitoring module monitors the thermal state associated with the client device.

### Claim 6 (depends on 5)

The method of claim 5, wherein the monitoring module determines whether a throttle threshold of the client device has been violated.

### Claim 7 (depends on 5)

The method of claim 5, wherein the monitoring module communicates with the policy enforcement module if the monitoring module detects thermal throttling of the client device.

### Claim 8 (depends on 7)

The method of claim 7, wherein the policy enforcement module comprises two or more stored policies.

### Claim 9 (depends on 8)

The method of claim 8, further comprising:
selecting, with the server policy enforcement module, one of the two or more stored policies for implementation.

### Claim 10 (depends on 9)

The method of claim 9, wherein the selecting is based on a current user of the client device.

### Claim 11 (depends on 9)

The method of claim 9, wherein the selecting is based on a current mode of operation of the client device.

### Claim 12 (depends on 1)

The method of claim 1, wherein the stored policy communicated to the client device is configured to adjust speculative tasks running on the client application.

### Claim 13 (depends on 1)

The method of claim 1, wherein the stored policy is configured to reduce the thermal state.

### Claim 14 (depends on 13)

The method of claim 13, wherein the reduced thermal state does not violate the thermal threshold.

### Claim 15

A system, comprising:
a memory that stores instructions; and
a processor configured by the instructions to perform operations comprising:
monitoring, by a server, a thermal state of a client device;
determining, by the server, if the thermal state violates a thermal threshold;
selecting a stored policy associated with the monitored thermal state if the thermal state violates the thermal threshold; and
communicating, by the server, the selected stored policy to a client application on the client device for implementation by a processor of the client device.

### Claim 16 (depends on 15)

The system of claim 15, wherein the server comprises a thermal management system, the thermal management system including a monitoring module and a policy enforcement module, and wherein the monitoring module monitors the thermal state associated with the client device and the server policy enforcement module comprises the stored policy.

### Claim 17 (depends on 16)

The system of claim 16, wherein the monitoring module evaluates the thermal state from the client application running on the client device and detects thermal throttling of the client device, wherein the monitoring module determines whether a throttle threshold of the client device has been violated.

### Claim 18 (depends on 17)

The system of claim 17, wherein the stored policy communicated to the client device is selected depending on a current user or a current mode of operation of the client device, or both.

### Claim 19

A non-transitory processor-readable storage medium storing processor-executable instructions that, when executed by a processor of a server, cause the server to perform operations comprising:
monitoring, by the processor, a thermal state of a client device;
determining, by the processor, if the thermal state violates a thermal threshold;
selecting a stored policy associated with the monitored thermal state if the thermal state violates the thermal threshold; and
communicating, by the processor, the selected stored policy to a client application on the client device for implementation by a processor of the client device.

### Claim 20 (depends on 19)

The non-transitory processor-readable storage medium of claim 19, wherein the stored policy communicated to the client device adjusts speculative tasks running on the client device.
