IP Library Granted Patent US 12,585,565
Granted Patent B2
US 12,585,565 · App. 18/192,405 · Granted Mar 24, 2026

Selecting a runtime configuration based on model performance

Inventors: Mengnan Wang (Chapel Hill, NC); John W. Nicholson (Cary, NC); Barrett Bryson (Raleigh, NC); Nikhil Ambha Madhusudhana (Chicago, IL)
Assignee: Lenovo (Singapore) Pte. Ltd.
G06F11/3447G06F9/44505G06F11/3024
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,585,565
App. No.
18/192,405
Granted
Mar 24, 2026
Kind
B2
Abstract

A method, apparatus, and computer program product for selecting a runtime configuration based on model performance. The method includes running a computing model on a computing device using a first runtime configuration among a plurality of runtime configurations that are configured for the computing model and determining, by the computing device, a reduction in model performance. The method includes identifying, among the plurality of runtime configurations, a second runtime configuration based at least in part on the determined reduction in model performance and running the computing model using the second runtime configuration in response to the determined reduction in model performance.

Claims (60)

1 . A method, comprising:

running a computing model on a computing device using a first runtime configuration among a plurality of runtime configurations that are configured for the computing model, wherein the computing device comprises a plurality of computing resources;

detecting, by the computing device, a resource conflict in the plurality of resources in response to a predictive trigger;

determining, by the computing device, a reduction in model performance based on the detected resource conflict;

identifying, among the plurality of runtime configurations, a second runtime configuration based at least in part on the determined reduction in model performance; and

running the computing model using the second runtime configuration in response to the determined reduction in model performance, wherein the second runtime configuration improves model performance by reducing the resource conflict.

2 . The method of claim 1 , further comprising monitoring a set of performance metrics associated with the computing device, wherein determining the reduction in model performance comprises determining the reduction in model performance based at least in part on the monitored set of performance metrics.

3 . The method of claim 2 , wherein the monitored set of performance metrics includes one or more of:

a processor usage, a chipset temperature, a chipset frequency, a power usage, an inter-frame arrival time, a frame processing time, a frame processing rate, an available amount of computing resources, or a combination thereof.

4 . The method of claim 1 , further comprising:

capturing audio input; and

predicting an increase in computing resource usage based at least in part on the captured audio input,

wherein determining the reduction in model performance comprises determining the reduction in model performance based at least in part on the predicted increase in computing resource usage.

5 . The method of claim 1 , further comprising:

monitoring for a predetermined set of user interface (“UI”) interactions; and

predicting an increase in computing resource usage based at least in part on detecting a UI interaction from the predetermined set of UI interactions,

wherein determining the reduction in model performance comprises determining the reduction in model performance based at least in part on the predicted increase in computing resource usage.

6 . The method of claim 1 , wherein running the computing model using the second runtime configuration comprises re-configuring the computing model in real-time.

7 . The method of claim 1 , wherein the computing model comprises one of: a machine-learning model, an Artificial Intelligence model, a Deep Learning model, or a combination thereof.

8 . The method of claim 7 , wherein the computing model outputs image data, wherein the output image data has a first resolution when using the first runtime configuration and has a second resolution, lower than the first resolution, when using the second runtime configuration.

9 . The method of claim 1 , further comprising:

receiving, via an application programming interface, a notification of scheduled consumption of computing resources,

wherein determining the reduction in model performance comprises determining the reduction in model performance based at least in part on the notification of scheduled consumption of computing resources.

10 . The method of claim 1 , wherein the second runtime configuration uses fewer computing resources than the first runtime configuration, the method further comprising:

determining an end to the reduction in model performance; and

running the computing model using the first runtime configuration in response to the end to the reduction in model performance.

11 . An apparatus comprising:

a processor; and

a memory coupled to the processor, the memory comprising instructions executable by the processor to cause the apparatus to:

run a computing model of a computing device using a first runtime configuration among a plurality of runtime configurations that are configured for the computing model, wherein the computing device comprises a plurality of computing resources;

detect a resource conflict in the plurality of resources in response to a predictive trigger;

determine a reduction in model performance based on the detected resource conflict;

identify, among the plurality of runtime configurations, a second runtime configuration based at least in part on the determined reduction in model performance; and

run the computing model using the second runtime configuration in response to the determined reduction in model performance, wherein the second runtime configuration improves model performance by reducing the resource conflict.

12 . The apparatus of claim 11 , wherein the instructions are further executable by the processor to cause the apparatus to:

monitor a set of performance metrics associated with the apparatus, wherein to determine the reduction in model performance, the instructions are further executable by the processor to cause the apparatus to determine the reduction in model performance based at least in part on the monitored set of performance metrics,

wherein the monitored set of performance metrics includes one or more of: a processor usage, a chipset temperature, a chipset frequency, a power usage, an inter-frame arrival time, a frame processing time, a frame processing rate, an available amount of computing resources, or a combination thereof.

13 . The apparatus of claim 11 , wherein the instructions are further executable by the processor to cause the apparatus to:

capture audio input; and

predict an increase in computing resource usage based at least in part on the captured audio input,

wherein to determine the reduction in model performance, the instructions are executable by the processor to cause the apparatus to determine the reduction in model performance based at least in part on the predicted increase in computing resource usage.

14 . The apparatus of claim 11 , wherein the instructions are further executable by the processor to cause the apparatus to:

monitor for a predetermined set of user interface (“UI”) interactions; and

predict an increase in computing resource usage based at least in part on detecting a UI interaction from the predetermined set of UI interactions,

wherein to determine the reduction in model performance, the instructions are executable by the processor to cause the apparatus to determine the reduction in model performance based at least in part on the predicted increase in computing resource usage.

15 . The apparatus of claim 11 , wherein to run the computing model using the second runtime configuration, the instructions are executable by the processor to cause the apparatus to re-configure the computing model in real-time.

16 . The apparatus of claim 11 , wherein the computing model comprises one of: a machine-learning model, an Artificial Intelligence model, a Deep Learning model, or a combination thereof.

17 . The apparatus of claim 16 , wherein the computing model outputs image data, wherein the output image data has a first resolution when using the first runtime configuration and has a second resolution, lower than the first resolution, when using the second runtime configuration.

18 . The apparatus of claim 11 , wherein the instructions are further executable by the processor to cause the apparatus to:

receive, via an application programming interface, a notification of scheduled consumption of computing resources,

wherein to determine the reduction in model performance, the instructions are executable by the processor to cause the apparatus to determine the reduction in model performance based at least in part on the notification of scheduled consumption of computing resources.

19 . The apparatus of claim 11 , wherein the second runtime configuration uses fewer computing resources than the first runtime configuration, wherein the instructions are further executable by the processor to cause the apparatus to:

determine an end to the reduction in model performance; and

run the computing model using the first runtime configuration in response to the end to the reduction in model performance.

20 . A computer program product comprising a non-transitory computer readable storage medium storing code, the code being configured to be executable by a processor to perform operations comprising:

running a computing model of a computing device using a first runtime configuration among a plurality of runtime configurations that are configured for the computing model, wherein the computing device comprises a plurality of computing resources;

detecting a resource conflict in the plurality of resources in response to a predictive trigger;

determining a reduction in model performance based on the detected resource conflict;

identifying, among the plurality of runtime configurations, selecting a second runtime configuration based at least in part on the determined reduction in model performance; and

running the computing model using the second runtime configuration in response to the determined reduction in model performance, wherein the second runtime configuration improves model performance by reducing the resource conflict.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 17, 2023
From: LENOVO (UNITED STATES) INC.
To: LENOVO (SINGAPORE) PTE. LTD.
Reel/Frame 065256/0382 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 13, 2023
From: WANG, MENGNAN; NICHOLSON, JOHN W; BRYSON, BARRETT; MADHUSUDHANA, NIKHIL AMBHA
To: LENOVO (UNITED STATES) INC.
Reel/Frame 063318/0906 →
Continuity (1)
Related Publication 20240330141A1 · Oct 3, 2024
References Cited (3)
US 11614963B2 · Jia · 2023 [cited by examiner]
US 20180246762A1 · Tarsa · 2018 [cited by examiner]
US 20200302343A1 · Gupta · 2020 [cited by examiner]