IP Library Granted Patent US 11,599,966
Granted Patent B2
US 11,599,966 · App. 17/322,620 · Granted Mar 7, 2023

Frame rate optimization system

Inventors: John Kelly (Mallow, IE); Nicholas Chase Busick (Austin, TX)
Assignee: Dell Products L.P.
G06T1/20G06F9/45558H04N7/0127G06F2009/45579G06F2009/45591G09G2340/0435
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 11,599,966
App. No.
17/322,620
Granted
Mar 7, 2023
Kind
B2
Abstract

A networked system includes an application that produces application frames at a first application frame rate, a graphics processing system that processes the application frames to produce graphics frames at a first graphics frame rate, a VDI system that processes the graphics frames to produce VDI frames at a first VDI frame rate, and an endpoint device that processes the VDI frames to produce endpoint frames at an endpoint frame rate. A frame rate optimization system monitors the application processing, the graphics processing, the VDI processing, and the endpoint processing and, based on the endpoint frame rate, reconfigures at least one of: the application to produce the application frames at a second application frame rate, the graphics processing system to produce the graphics frames at a second graphics frame rate, or the VDI system to produce the VDI frames at a second VDI frame rate.

Claims (76)

1. A networked system, comprising:

an application that is configured to perform first application frame processing operations to produce application frames at a first application frame rate;

a graphics processing system that is configured to perform first graphics frame processing operations on the application frames to produce graphics frames at a first graphics frame rate;

a Virtual Desktop Infrastructure (VDI) system that is configured to perform first VDI frame processing operations on the graphics frames to produce VDI frames at a first VDI frame rate;

an endpoint device that is configured to perform endpoint frame processing operations on the VDI frames to produce endpoint frames at delivered endpoint frame rate; and

a frame rate optimization system that is coupled to the endpoint device, the VDI system, the graphics processing system, and the application system, wherein the frame rate optimization system is configured to:

monitor the first application frame processing operations performed by the application, the first graphics frame processing operations performed by the graphics processing system, the first VDI frame processing operations performed by the VDI system, and the endpoint frame processing operations performed by the endpoint device;

identify a VDI frame rate setting and a maximum VDI frame rate capability of the VDI system; and

reconfigure, based on a relationship between the delivered endpoint frame rate produced for the endpoint frames by the endpoint device via the performance of the endpoint frame processing operations and at least one of the VDI frame rate setting and the maximum VDI frame rate capability of the VDI system, at least one of:

the application to perform second application frame processing operations to produce the application frames at a second application frame rate; or

the graphics processing system to perform second graphics frame processing operations to produce the graphics frames at a second graphics frame rate.

2. The system of claim 1 , wherein the endpoint device is coupled to the VDI system, the graphics processing system, and the application system via a network.

3. The system of claim 1 , wherein the frame rate optimization system is configured, in response to the delivered endpoint frame rate being equal to the VDI frame rate setting and the maximum VDI frame rate capability, to reconfigure at least one of:

the application to perform the second application frame processing operations to produce the application frames at the second application frame rate that is equal to the first VDI frame rate; or

the graphics processing system to perform the second graphics frame processing operations to produce the graphics frames at the second graphics frame rate that is equal to the first VDI frame rate.

4. The system of claim 1 , wherein the frame rate optimization system is configured, in response to the delivered endpoint frame rate being equal to the VDI frame rate setting and less than the maximum VDI frame rate capability, to:

reconfigure the VDI system to perform the second VDI frame processing operations to produce the VDI frames at the second VDI frame rate that is equal to the maximum VDI frame rate capability; and

reconfigure at least one of:

the application to perform the second application frame processing operations to produce the application frames at the second application frame rate that is equal to the second VDI frame rate; or

the graphics processing system to perform the second graphics frame processing operations to produce the graphics frames at the second graphics frame rate that is equal to the second VDI frame rate.

5. The system of claim 1 , wherein the frame rate optimization system is configured, in response to the delivered endpoint frame rate being less than the VDI frame rate setting, to:

reconfigure the VDI system to perform the second VDI frame processing operations to produce the VDI frames at the second VDI frame rate that is equal to the delivered endpoint frame rate; and

reconfigure at least one of:

the application to perform the second application frame processing operations to produce the application frames at the second application frame rate that is equal to the second VDI frame rate; or

the graphics processing system to perform the second graphics frame processing operations to produce the graphics frames at the second graphics frame rate that is equal to the second VDI frame rate.

6. The system of claim 5 , wherein the frame rate optimization system is configured, in response to the delivered endpoint frame rate being less than the VDI frame rate setting, to:

transmit, for display on the endpoint device, a constrained resources warning message.

7. An Information Handling System (IHS), comprising:

a processing system; and

a memory system that is coupled to the processing system and that includes instructions that, when executed by the processing system, cause the processing system to provide a frame rate optimization engine that is configured to:

monitor first application frame processing operations performed by an application to produce application frames at a first application frame rate, first graphics frame processing operations performed by a graphics processing system on the application frames to produce graphics frames at a first graphics frame rate, first Virtual Desktop Infrastructure (VDI) frame processing operations performed by a VDI system on the graphics frames to produce VDI frames at a first VDI frame rate, and endpoint frame processing operations performed by an endpoint device on the VDI frames to produce endpoint frames at delivered endpoint frame rate;

identify a VDI frame rate setting and a maximum VDI frame rate capability of the VDI system; and

reconfigure, based on a relationship between the delivered endpoint frame rate produced for the endpoint frames by the endpoint device via the performance of the endpoint frame processing operations and at least one of the VDI frame rate setting and the maximum VDI frame rate capability of the VDI system, at least one of:

the application to perform second application frame processing operations to produce the application frames at a second application frame rate; or

the graphics processing system to perform second graphics frame processing operations to produce the graphics frames at a second graphics frame rate.

8. The IHS of claim 7 , wherein: the endpoint device is coupled to the VDI system, the graphics processing system, and the application via a network.

9. The IHS of claim 7 , wherein the frame rate optimization engine is configured, in response to the delivered endpoint frame rate being equal to the VDI frame rate setting and the maximum VDI frame rate capability, to reconfigure at least one of:

the application to perform the second application frame processing operations to produce the application frames at the second application frame rate that is equal to the first VDI frame rate; or

the graphics processing system to perform the second graphics frame processing operations to produce the graphics frames at the second graphics frame rate that is equal to the first VDI frame rate.

10. The IHS of claim 7 , wherein the frame rate optimization engine is configured, in response to the delivered endpoint frame rate being equal to the VDI frame rate setting and less than the maximum VDI frame rate capability, to:

reconfigure the VDI system to perform the second VDI frame processing operations to produce the VDI frames at the second VDI frame rate that is equal to the maximum VDI frame rate capability; and

reconfigure at least one of:

the application to perform the second application frame processing operations to produce the application frames at the second application frame rate that is equal to the second VDI frame rate; or

the graphics processing system to perform the second graphics frame processing operations to produce the graphics frames at the second graphics frame rate that is equal to the second VDI frame rate.

11. The IHS of claim 7 , wherein the frame rate optimization engine is configured, in response to the delivered endpoint frame rate being less than the VDI frame rate setting, to:

reconfigure the VDI system to perform the second VDI frame processing operations to produce the VDI frames at the second VDI frame rate that is equal to the delivered endpoint frame rate; and

reconfigure at least one of:

the application to perform the second application frame processing operations to produce the application frames at the second application frame rate that is equal to the second VDI frame rate; or

the graphics processing system to perform the second graphics frame processing operations to produce the graphics frames at the second graphics frame rate that is equal to the second VDI frame rate.

12. The IHS of claim 11 , wherein the frame rate optimization system is configured, in response to the delivered endpoint frame rate being less than the VDI frame rate setting, to:

transmit, for display on the endpoint device, a constrained resources warning message.

13. The IHS of claim 7 , wherein the reconfiguration of the at least one of the application or the graphics processing system synchronizes an application frame rate setting of the application, a graphics frame rate setting of the graphics processing system, and the VDI frame rate setting of the VDI system with the delivered endpoint frame rate produced by the endpoint device via the performance of the endpoint frame processing operations.

14. A method for optimizing frame rates, comprising:

monitoring, by a frame rate optimization system, first application frame processing operations performed by an application to produce application frames at a first application frame rate, first graphics frame processing operations performed by a graphics processing system on the application frames to produce graphics frames at a first graphics frame rate, first Virtual Desktop Infrastructure (VDI) frame processing operations performed by a VDI system on the graphics frames to produce VDI frames at a first VDI frame rate, and endpoint frame processing operations performed by an endpoint device on the VDI frames to produce endpoint frames at an endpoint frame rate;

identifying, by the frame rate optimization system, a VDI frame rate setting and a maximum VDI frame rate capability of the VDI system; and

reconfiguring, by the frame rate processing system based on a relationship between the delivered endpoint frame rate produced for the endpoint frames by the endpoint device via the performance of the endpoint frame processing operations and at least one of the VDI frame rate setting and the maximum VDI frame rate capability of the VDI system, at least one of:

the application to perform second application frame processing operations to produce the application frames at a second application frame rate; or

the graphics processing system to perform second graphics frame processing operations to produce the graphics frames at a second graphics frame rate.

15. The method of claim 14 , wherein the endpoint device is coupled to the VDI system, the graphics processing system, and the application via a network.

16. The method of claim 14 , further comprising:

reconfiguring, by the frame rate optimization system in response to the delivered endpoint frame rate being equal to the VDI frame rate setting and the maximum VDI frame rate capability, at least one of:

the application to perform the second application frame processing operations to produce the application frames at the second application frame rate that is equal to the first VDI frame rate; or

the graphics processing system to perform the second graphics frame processing operations to produce the graphics frames at the second graphics frame rate that is equal to the first VDI frame rate.

17. The method of claim 14 , further comprising:

reconfiguring, by the frame rate optimization system in response to the delivered endpoint frame rate being equal to the VDI frame rate setting and less than the maximum VDI frame rate capability, the VDI system to perform the second VDI frame processing operations to produce the VDI frames at the second VDI frame rate that is equal to the maximum VDI frame rate capability; and

reconfiguring, by the frame rate optimization system in response to the delivered endpoint frame rate being equal to the VDI frame rate setting and less than the maximum VDI frame rate capability, at least one of:

the application to perform the second application frame processing operations to produce the application frames at the second application frame rate that is equal to the second VDI frame rate; or

the graphics processing system to perform the second graphics frame processing operations to produce the graphics frames at the second graphics frame rate that is equal to the second VDI frame rate.

18. The method of claim 14 , wherein, the frame rate optimization system reconfigures:

reconfiguring, by the frame rate optimization system in response to the delivered endpoint frame rate being less than the VDI frame rate setting, the VDI system to perform the second VDI frame processing operations to produce the VDI frames at the second VDI frame rate that is equal to the delivered endpoint frame rate; and

reconfiguring, by the frame rate optimization system in response to the delivered endpoint frame rate being less than the VDI frame rate setting, at least one of:

the application to perform the second application frame processing operations to produce the application frames at the second application frame rate that is equal to the second VDI frame rate; or

the graphics processing system to perform the second graphics frame processing operations to produce the graphics frames at the second graphics frame rate that is equal to the second VDI frame rate.

19. The method of claim 18 , further comprising:

transmitting, by the frame rate optimization system in response to the delivered endpoint frame rate being less than the VDI frame rate setting and for display on the endpoint device, a constrained resources warning message.

20. The method of claim 14 , wherein the reconfiguration of the at least one of the application or the graphics processing system synchronizes an application frame rate setting of the application, a graphics frame rate setting of the graphics processing system, and the VDI frame rate setting of the VDI system with the delivered endpoint frame rate produced by the endpoint device via the performance of the endpoint frame processing operations.

Assignments (8)
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (058014/0560) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 062022/0473 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (057931/0392) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 062022/0382 →
RELEASE OF SECURITY INTEREST IN PATENTS PREVIOUSLY RECORDED AT REEL/FRAME (057758/0286) Recorded Jun 10, 2022
From: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
To: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
Reel/Frame 061654/0064 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 058014/0560 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 057758/0286 →
SECURITY INTEREST Recorded Oct 6, 2021
From: DELL PRODUCTS L.P.; EMC IP HOLDING COMPANY LLC
To: THE BANK OF NEW YORK MELLON TRUST COMPANY, N.A., AS NOTES COLLATERAL AGENT
Reel/Frame 057931/0392 →
SECURITY AGREEMENT Recorded Oct 1, 2021
From: DELL PRODUCTS, L.P.; EMC IP HOLDING COMPANY LLC
To: CREDIT SUISSE AG, CAYMAN ISLANDS BRANCH
Reel/Frame 057682/0830 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 26, 2021
From: KELLY, JOHN; BUSICK, NICHOLAS CHASE
To: DELL PRODUCTS L.P.
Reel/Frame 056359/0140 →
Continuity (1)
Related Publication 20220366523A1 · Nov 17, 2022