# US 11,442,513 B1 · Configuration management based on thermal state

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

- Number: US 11,442,513 B1
- Document ID: US11442513B1
- Status: Granted
- Kind: B1
- Application number: 16/385,568
- Filed: 2019-04-16
- Granted: 2022-09-13
- Earliest claimed: 2019-04-16
- Assignees: Snap Inc.
- Applicants: Snap Inc.
- Inventors: Michael Cieslak; Jiayao Yu; Kai Chen; Farnaz Azmoodeh; Michael David Marr; Jun Huang; Zahra Ferdowsi
- Web page: https://patentgrep.com/patent/US11442513B1

## CPC

- G06F 1/206: {comprising thermal management}
- G01K 3/005: {Circuits arrangements for indicating a predetermined temperature (fire detection G08B17/00)}
- G06F 1/329: by task scheduling
- G06F 9/44505: {Configuring for program initiating, e.g. using registry, configuration files}
- 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)}
- 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)
- G01K: MEASURING TEMPERATURE; MEASURING QUANTITY OF HEAT; THERMALLY-SENSITIVE ELEMENTS NOT OTHERWISE PROVIDED FOR (radiation pyrometry G01J5/00)
- 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

The systems and methods manage thermal states of a device through user configuration of a client application on the 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 for configuring an application having a network manager on a device, the method comprising:
setting, by a processor, thermal thresholds associated with the device;
receiving, by the processor, thermal configuration settings from a user of the device; updating a policy stored within the device responsive to the thermal configuration settings from the user; monitoring, by the processor, thermal states associated with the device, wherein monitoring comprises detecting and logging the load and frequency of at least one central processing unit (CPU) from each of a plurality of cores of the at least one CPU, wherein the average CPU load and frequency from each core of the at least one CPU are combined to provide an operation index, wherein the operation index for each core of the at least one CPU are summed to create a master operation index, and wherein monitoring is for a predetermined period or initiated in response to a user-initiated interaction with the device; and
implementing, by the processor, the thermal configuration settings of the stored policy responsive to a violation of one of the thermal thresholds by one of the monitored thermal states, wherein implementing the stored policy comprises adjusting activity of the network manager, and wherein adjusting activity comprises reducing execution of speculative tasks.

### Claim 2 (depends on 1)

The method of claim 1, wherein the application comprises additional components that are adjusted upon violation of the thermal threshold.

### Claim 3 (depends on 2)

The method of claim 2, wherein the additional components comprise a device manager, communications manager, accelerometer, and temperature sensor.

### Claim 4 (depends on 1)

The method of claim 1, wherein the step of receiving thermal configuration settings from a user further comprises: selecting a desired mode by the user.

### Claim 5 (depends on 4)

The method of claim 4, wherein the mode is a low-performance mode or a high-performance mode.

### Claim 6 (depends on 4)

The method of claim 4, wherein the high-performance mode comprises reducing execution of speculative tasks, non-critical tasks, or both.

### Claim 7 (depends on 1)

The method of claim 1, wherein the step of receiving thermal configuration settings further comprises:
selecting by a user one or more functions not to be executed during violation of a thermal threshold.

### Claim 8

The method of 1, further comprising adjusting a CPU frequency according to the stored policy.

### Claim 9 (depends on 1)

The method claim 1, further comprising:
providing notification to the user of the violation of one of the thermal thresholds by one of the monitored thermal states.

### Claim 10 (depends on 1)

The method of claim 1, wherein the method further comprises:
communicating, by the processor, the thermal thresholds to a remote server.

### Claim 11 (depends on 10)

The method of claim 10, wherein the remote server comprises a server stored policy.

### Claim 12 (depends on 11)

The method of claim 11, wherein the server stored policy is communicated to the application on the device.

### Claim 13

A system, comprising:
a memory that stores instructions; and
a processor configured by the instructions to perform operations comprising:
setting, by the processor, thermal thresholds associated with a device of the system that comprises a network manager;
receiving, by the processor, thermal configuration settings from a user of the device;
updating a policy stored within the device responsive to the thermal configuration settings from the user;
monitoring, by the processor, thermal states associated with the device, wherein monitoring comprises detecting and logging the load and frequency of at least one central processing unit (CPU) from each of a plurality of cores of the at least one CPU, wherein the average CPU load and frequency from each core of the at least one CPU are combined to provide an operation index, wherein the operation index for each core of the at least one CPU are summed to create a master operation index, and wherein monitoring is for a predetermined period or initiated in response to a user-initiated interaction with the device; and implementing, by the processor, the thermal configuration settings of the stored policy responsive to a violation of one of the thermal thresholds by one of the monitored thermal states, wherein the stored policy comprises adjusting activity of the network manager to reduce execution of speculative tasks.

### Claim 14 (depends on 13)

The system of claim 13, wherein the stored policy is associated with a mode of operation of the device.

### Claim 15 (depends on 13)

The system of claim 13, further comprising:
a user interface wherein the user interface is configured to receive the thermal configuration settings from the user.

### Claim 16 (depends on 13)

The system of claim 13, wherein the stored policies are stored on a remote server.

### Claim 17

A non-transitory processor-readable storage medium storing processor-executable instructions that, when executed by a processor of a device, cause the device comprising a network manager to perform operations comprising:
setting thermal thresholds associated with the device;
receiving thermal configuration settings from a user of the device;
updating a policy stored within the device responsive to the thermal configuration settings from the user;
monitoring thermal states associated with the device, wherein monitoring comprises detecting and logging the load and frequency of at least one central processing unit (CPU) from each of a plurality of cores of the at least one CPU, wherein the average CPU load and frequency from each core of the at least one CPU are combined to provide an operation index, wherein the operation index for each core of the at least one CPU are summed to create a master operation index, and wherein monitoring is for a predetermined period or initiated in response to a user-initiated interaction with the device; and
implementing the thermal configuration settings of the stored policy responsive to a violation of one of the thermal thresholds by one of the monitored thermal states, wherein the stored policy comprises adjusting activity of the network manager to reduce execution of speculative tasks.
