IP Library Granted Patent US 9,552,227
Granted Patent B2
US 9,552,227 · App. 14/882,173 · Granted Jan 24, 2017

System and method for context-aware adaptive computing

Inventors: Will A. Egner (Cedar Park, TX); Sunil Jason Kumar (Austin, TX); Christopher Labrador (Austin, TX); Richard William Schuckle (Austin, TX)
Assignee: Dell Products L.P.
G06F9/5016G06F9/461G06F9/5094Y02B60/142
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 9,552,227
App. No.
14/882,173
Filed
Oct 13, 2015
Granted
Jan 24, 2017
Kind
B2
Art Unit
2195
USPC
718/104
Abstract

The present disclosure relates to systems and methods for context-aware adaptive computing. In one embodiment, the present disclosure includes a method comprising receiving a request at a first information handling system (IHS) to perform an application computation. The method also includes determining a user's context, the user operating the first IHS, and ascertaining a battery state of the first IHS. The method further includes allocating the application computation between the first IHS and a second IHS based at least on the user's context and the battery state of the first IHS. The present disclosure also includes associated systems and apparatuses.

Claims (47)

1. A method comprising:

receiving a request at a first information handling system (IHS) to perform an application computation;

determining a user's context, the user operating the first IHS and requesting performance of the application computation, the user's context including a default user style of the user, selected from a predetermined set of styles;

determining a first computational capability of the first IHS, the first computational capability based on at least one of a number of processors of the first IHS, a speed of a processor of the first IHS, a number of applications running on the first IHS, a number of operating systems running on the first IHS, an amount of memory available on the first IHS, and a type of memory available on the first IHS;

determining a second computational capability of a second IHS, the second computational capability based on at least one of a number of processors of the second IHS, a speed of a processor of the second IHS, a number of applications running on the second IHS, a number of operating systems running on the second IHS, an amount of memory available on the second IHS, and a type of memory available on the second IHS; and

allocating the application computation between the first IHS and the second IHS, wherein a first portion of the application is allocated to the first IHS and a second portion of the application is allocated to the second IHS based at least on the user's context, at least one of the first computational capability and the second computational capability, and at least one of a location of data to be used in the application computation, a location of the first IHS, a time of use of the first IHS, and a security policy.

2. The method of claim 1 , wherein determining the user's context comprises:

storing patterns of use of the first IHS by the user; and

predicting patterns of use of the first IHS by the user based at least on the stored patterns of use and the default user style of the user.

3. The method of claim 1 , wherein determining the user's context comprises:

determining at least one of speed, bandwidth, latency, or error rate of a connection between the first IHS and the second IHS; and

determining a communication cost of communicating via the connection.

4. The method of claim 3 , further comprising modifying the connection to optimize the application computation.

5. The method of claim 1 , wherein alternative application computations are performed at a different IHS than the application computation.

6. The method of claim 1 , wherein allocating the application computation is further based on a computation cost of the application computation, the computation cost including at least one of a power cost to perform the application computation, a resource cost to perform the application computation, and a communication cost to transmit data used in the application computation.

7. A non-transitory computer-readable medium containing instructions that, when executed by a processor, are configured to:

receive a request at a first information handling system (IHS) to perform an application computation;

determine a user's context, the user operating the first IHS and requesting performance of the application computation, the user's context including a default user style of the user, selected from a predetermined set of styles;

determine a first computational capability of the first IHS, the first computational capability based on at least one of a number of processors of the first IHS, a speed of a processor of the first IHS, a number of applications running on the first IHS, a number of operating systems running on the first IHS, an amount of memory available on the first IHS, and a type of memory available on the first IHS;

determine a second computational capability of a second IHS, the second computational capability based on at least one of a number of processors of the second IHS, a speed of a processor of the second IHS, a number of applications running on the second IHS, a number of operating systems running on the second IHS, an amount of memory available on the second IHS, and a type of memory available on the second IHS; and

allocate the application computation between the first IHS and the second IHS, wherein a first portion of the application is allocated to the first IHS and a second portion of the application is allocated to the second IHS based at least on the user's context, at least one of the first computational capability and the second computational capability, and at least one of a location of data to be used in the application computation, a location of the first IHS, a time of use of the first IHS, and a security policy.

8. The computer-readable medium of claim 7 , wherein determining the user's context comprises:

storing patterns of use of the first IHS by the user; and

predicting patterns of use of the first IHS by the user based at least on the stored patterns of use and the default user style of the user.

9. The computer-readable medium of claim 7 , wherein determining the user's context comprises:

determining at least one of speed, bandwidth, latency, or error rate of a connection between the first IHS and the second IHS; and

determining a communication cost of communicating via the connection.

10. The computer-readable medium of claim 9 , the instructions further configured to modify the connection to optimize the application computation.

11. The computer-readable medium of claim 7 , wherein alternative application computations are performed at a different IHS than the application computation.

12. The computer-readable medium of claim 10 , wherein allocating the application computation is further based on a computation cost of the application computation, the computation cost including at least one of a power cost to perform the application computation, a resource cost to perform the application computation, and a communication cost to transmit data used in the application computation.

13. A system comprising:

a processor;

a memory communicatively coupled to the processor; and

instructions stored within the memory, the instructions, when executed by the processor, causing the processor to:

receive a request to perform an application computation;

determine a user's context of operation of a first information handling system (IHS), the user requesting performance of the application computation, the user's context including a default user style of a user, selected from a predetermined set of styles;

determine a first computational capability of the first IHS, the first computational capability based on at least one of a number of processors of the first IHS, a speed of a processor of the first IHS, a number of applications running on the first IHS, a number of operating systems running on the first IHS, an amount of memory available on the first IHS, and a type of memory available on the first IHS;

determine a second computational capability of a second IHS, the second computational capability based on at least one of a number of processors of the second IHS, a speed of a processor of the second IHS, a number of applications running on the second IHS, a number of operating systems running on the second IHS, an amount of memory available on the second IHS, and a type of memory available on the second IHS; and

allocate the application computation between the first IHS and the second IHS, wherein a first portion of the application is allocated to the first IHS and a second portion of the application is allocated to the second IHS based at least on the user's context, at least one of the first computational capability and the second computational capability, and at least one of a location of data to be used in the application computation, a location of the first IHS, a time of use of the first IHS, and a security policy.

14. The system of claim 13 , wherein determining the user's context comprises:

storing patterns of use of the first IHS by the user; and

predicting patterns of use of the first IHS by the user based at least on the stored patterns of use and the default user style of the user.

15. The system of claim 13 , wherein determining the user's context comprises:

determining at least one of speed, bandwidth, latency, or error rate of a connection between the first IHS and the second IHS; and

determining a communication cost of communicating via the connection.

16. The system of claim 13 , wherein alternative application computations are performed at a different IHS than the application computation.

17. The system of claim 13 , wherein allocating the application computation is further based on a computation cost of the application computation, the computation cost including at least one of a power cost to perform the application computation, a resource cost to perform the application computation, and a communication cost to transmit data used in the application computation.

Assignments (15)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (053546/0001) Recorded Jun 23, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC IP HOLDING COMPANY LLC
Reel/Frame 071642/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (045455/0001) Recorded May 20, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061753/0001 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (040136/0001) Recorded Apr 26, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO ASAP SOFTWARE EXPRESS, INC.); DELL MARKETING L.P. (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO CREDANT TECHNOLOGIES, INC.); DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL PRODUCTS L.P.; DELL MARKETING CORPORATION (SUCCESSOR-IN-INTEREST TO FORCE10 NETWORKS, INC. AND WYSE TECHNOLOGY L.L.C.); EMC CORPORATION (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MAGINATICS LLC); EMC IP HOLDING COMPANY LLC (ON BEHALF OF ITSELF AND AS SUCCESSOR-IN-INTEREST TO MOZY, INC.); SCALEIO LLC
Reel/Frame 061324/0001 →
RELEASE OF SECURITY INTEREST Recorded Nov 3, 2021
From: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
To: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL, L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; WYSE TECHNOLOGY L.L.C.
Reel/Frame 058216/0001 →
SECURITY AGREEMENT Recorded Apr 22, 2020
From: CREDANT TECHNOLOGIES INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 053546/0001 →
SECURITY AGREEMENT Recorded Mar 21, 2019
From: CREDANT TECHNOLOGIES, INC.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL USA L.P.; EMC CORPORATION; FORCE10 NETWORKS, INC.; WYSE TECHNOLOGY L.L.C.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A.
Reel/Frame 049452/0223 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH, AS COLLATERAL AGENT
Reel/Frame 040134/0001 →
SECURITY AGREEMENT Recorded Sep 21, 2016
From: ASAP SOFTWARE EXPRESS, INC.; AVENTAIL LLC; CREDANT TECHNOLOGIES, INC.; DELL USA L.P.; DELL INTERNATIONAL L.L.C.; DELL MARKETING L.P.; DELL PRODUCTS L.P.; DELL SOFTWARE INC.; DELL SYSTEMS CORPORATION; EMC CORPORATION; EMC IP HOLDING COMPANY LLC; FORCE10 NETWORKS, INC.; MAGINATICS LLC; MOZY, INC.; SCALEIO LLC; SPANNING CLOUD APPS LLC; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 040136/0001 →
RELEASE OF REEL 037160 FRAME 0239 (TL) Recorded Sep 14, 2016
From: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040028/0115 →
RELEASE OF REEL 037160 FRAME 0142 (NOTE) Recorded Sep 14, 2016
From: BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS COLLATERAL AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040027/0812 →
RELEASE OF REEL 037160 FRAME 0171 (ABL) Recorded Sep 13, 2016
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: DELL SOFTWARE INC.; DELL PRODUCTS L.P.; WYSE TECHNOLOGY L.L.C.
Reel/Frame 040017/0253 →
SUPPLEMENTAL PATENT SECURITY AGREEMENT - ABL Recorded Nov 25, 2015
From: DELL PRODUCTS L.P.; DELL SOFTWARE INC.; BOOMI, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 037160/0171 →
SUPPLEMENTAL PATENT SECURITY AGREEMENT - TERM LOAN Recorded Nov 25, 2015
From: DELL PRODUCTS L.P.; DELL SOFTWARE INC.; BOOMI, INC.; WYSE TECHNOLOGY L.L.C.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 037160/0239 →
SUPPLEMENTAL PATENT SECURITY AGREEMENT - NOTES Recorded Nov 25, 2015
From: DELL PRODUCTS L.P.; DELL SOFTWARE INC.; BOOMI, INC.; WYSE TECHNOLOGY L.L.C.
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS FIRST LIEN COLLATERAL AGENT
Reel/Frame 037160/0142 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 13, 2015
From: EGNER, WILL A.; KUMAR, SUNIL JASON; LABRADOR, CHRISTOPHER; SCHUCKLE, RICHARD WILLIAM
To: DELL PRODUCTS L.P.
Reel/Frame 036785/0209 →
Continuity (2)
Continuation 13864017 · Apr 16, 2013
Related Publication 20160034309A1 · Feb 4, 2016