IP Library Granted Patent US 12,315,028
Granted Patent B2
US 12,315,028 · App. 17/729,789 · Granted May 27, 2025

Method and electronic device for boosting graphics performance

Inventors: Sripurna Mutalik (Karnataka, IN); Manith Shetty (Karnataka, IN); Anuradha Kanukotla (Karnataka, IN); Sumeen Agrawal (Karnataka, IN); Narendra Mutyala (Karnataka, IN); Naresh Kumar Narasimma Moorthy (Karnataka, IN); Pavan Nittur (Karnataka, IN); Mayank Gupta (Karnataka, IN); Kwanjin Jung (Suwon-si, KR)
Assignee: SAMSUNG ELECTRONICS CO., LTD.
G06T1/20G06F3/0485G06F3/14G06T1/60G09G2360/08
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,315,028
App. No.
17/729,789
Granted
May 27, 2025
Kind
B2
Abstract

Disclosed is a method for boosting (e.g., improving) graphics performance of an electronic device. The method for boosting graphics performance of an electronic device comprises: determining a context of the electronic device for boosting the graphics performance, determining a current state of the electronic device, determining at least one graphics configuration of hardware components of the electronic device and at least one application of the electronic device based on the context of the electronic device and the current state of the electronic device and generating a virtual display for displaying the at least one application based on the at least one graphics configuration of the hardware components and the at least one application.

Claims (98)

1. A method comprising:

determining, by a virtual display controller, a context of an electronic device;

determining, by the virtual display controller, a current state of the electronic device, wherein the current state indicates a real time consumption of hardware components of the electronic device;

determining, by the virtual display controller, at least one graphics configuration of hardware components of the electronic device and a first application of the electronic device, based on the context of the electronic device and the current state of the electronic device;

generating, by the virtual display controller, a virtual display for displaying the first application based on the at least one graphics configuration of the hardware components and the first application;

detecting, by the virtual display controller, an input for launching the first application displayed on the virtual display;

switching, by the virtual display controller, display of a second application displayed on a main display of the electronic device to the virtual display and display of the first application from the virtual display to the main display; and

determining, by the virtual display controller, a surface requirement for rendering the first application on the virtual display and a final state at run-time of the first application,

wherein the determining of the surface requirement includes:

determining one or more first parameters including at least one of a use of the electronic device, available memory, a type of the first application, or a battery level of the electronic device;

normalizing the one or more first parameters into a pre-determined range;

applying the one or more normalized first parameters to a first model; and

determining whether to render the first application on the virtual display with or without a surface based on the first model, and

wherein the determining of the final state at run-time of the first application includes:

determining one or more second parameters including at least one of network accessibility, the available memory, a size of the first application, or a continuous power draw;

normalizing the one or more second parameters into a pre-determined range;

applying the one or more normalized second parameters to a second model; and

determining whether to keep the rendered first application in a hold state in which the first application is compressed and stored in memory or a ready state in which the first application is maintained in a latest state, based on the second model.

2. The method as claimed in claim 1 , further comprising:

applying, by the virtual display controller, a current graphics configuration change to the first application;

enabling, by the virtual display controller, the first application for generating an interrupt by controlling the hardware components; and

enabling, by the virtual display controller, the first application for receiving inputs.

3. The method as claimed in claim 2 , further comprising:

retaining states of the first and second applications; and

storing an instance state of each application on the virtual display.

4. The method as claimed in claim 2 , further comprising:

detecting, by the virtual display controller, scrolling through a list of the second application displayed on the main display; and

rendering, by the virtual display controller, subsequent components of the list on the virtual display.

5. The method as claimed in claim 1 , further comprising:

monitoring, by the virtual display controller, interaction with the electronic device over a time period; and

predicting, by the virtual display controller, the context of the electronic device, the context comprising an instant of a future application launch using the first application by the electronic device, based on the monitored interaction.

6. The method as claimed in claim 1 , wherein the current state of the electronic device indicates a real-time resource consumption of the hardware components including at least one of a communicator including communication circuitry, a memory, or a power source.

7. The method as claimed in claim 1 , further comprising:

determining, by the virtual display controller, whether the hardware components are available for displaying the first application on the virtual display based on the context of the electronic device and the current state of the electronic device;

disabling, by the virtual display controller, the first application from generating an interrupt by controlling the hardware components, in response to determining that the hardware components are available for displaying the first application on the virtual display; and

disabling, by the virtual display controller, the first application from receiving specified inputs.

8. The method as claimed in claim 1 , further comprising:

generating, by the virtual display controller, the virtual display; and

displaying, by the virtual display controller, the first application on the virtual display by applying the at least one graphics configuration of the hardware components corresponding to the first application.

9. The method as claimed in claim 8 , further comprising:

fetching, by the virtual display controller, a content of the first application from a memory of the electronic device based on the at least one graphics configuration of the first application;

generating, by the virtual display controller, a User Interface (UI) hierarchy using the content;

rendering, by the virtual display controller, the first application based on the UI hierarchy and the at least one graphics configuration of the hardware components corresponding to the first application; and

rasterizing, by the virtual display controller, the first application on the virtual display.

10. An electronic device comprising:

memory;

at least one processor including processing circuitry;

a main display;

a virtual display controller, coupled to the memory and the at least one processor, and configured to:

determine a context of the electronic device,

determine a current state of the electronic device, wherein the current state indicates a real time consumption of hardware components of the electronic device,

determine at least one graphics configuration of hardware components of the electronic device and a first application of the electronic device based on the context of the electronic device and the current state of the electronic device,

generate a virtual display for displaying the first application based on the at least one graphics configuration of the hardware components and the first application,

detect an input for launching the first application displayed in the virtual display;

switch display of a second application displayed on a main display of the electronic device to the virtual display and display of the first application from the virtual display to the main display; and

determine a surface requirement for rendering the first application on the virtual display and a final state at run-time of the first application,

wherein the determining of the surface requirement includes:

determining one or more first parameters including at least one of a use of the electronic device, available memory, a type of the first application, or a battery level of the electronic device;

normalizing the one or more first parameters into a pre-determined range;

applying the one or more normalized first parameters to a first model; and

determining whether to render the first application on the virtual display with or without a surface based on the first model, and

wherein the determining of the final state at run-time of the first application includes:

determining one or more second parameters including at least one of network accessibility, the available memory, a size of the first application, or a continuous power draw;

normalizing the one or more second parameters into a pre-determined range;

applying the one or more normalized second parameters to a second model; and

determining whether to keep the rendered first application in a hold state in which the first application is compressed and stored in the memory or a ready state in which the first application is maintained in a latest state, based on the second model.

11. The electronic device as claimed in claim 10 , wherein the virtual display controller is further configured to:

apply a current graphics configuration change to the first application;

enable the first application for generating an interrupt by controlling the hardware components; and

enable the first application for receiving inputs.

12. The electronic device as claimed in claim 11 , wherein the virtual display controller is configured to:

retain states of the first and second applications; and

store an instance state of each application on the virtual display.

13. The electronic device as claimed in claim 11 , wherein the virtual display controller is configured to:

detect scrolling through a list of the second application displayed on the main display; and

render subsequent components of the list on the virtual display.

14. The electronic device as claimed in claim 10 , wherein the virtual display controller is configured to:

monitor interaction with the electronic device over a time period; and

predict the context of the electronic device, the context comprising an instant of a future application launch using the first application by the electronic device based on the monitored interaction.

15. The electronic device as claimed in claim 10 , wherein the current state of the electronic device indicates a real-time resource consumption of the hardware components including at least one of a communicator including communication circuitry, a memory, or a power source.

16. A non-transitory computer-readable storage medium storing instructions which, when executed by at least one processor of an electronic device, cause the at least one processor to control the electronic device to perform operations comprising:

determining a context of the electronic device;

determining a current state of the electronic device, wherein the current state indicates a real time consumption of hardware components of the electronic device;

determining at least one graphics configuration of hardware components of the electronic device and a first application of the electronic device, based on the context of the electronic device and the current state of the electronic device;

generating a virtual display for displaying the first application based on the at least one graphics configuration of the hardware components and the first application;

detecting an input for launching the first application displayed in the virtual display;

switching display of a second application displayed on a main display of the electronic device to the virtual display and display of the first application from the virtual display to the main display; and

determining, a surface requirement for rendering the first application on the virtual display and a final state at run-time of the first application,

wherein the determining of the surface requirement includes:

determining one or more first parameters including at least one of a use of the electronic device, available memory, a type of the first application, or a battery level of the electronic device;

normalizing the one or more first parameters into a pre-determined range;

applying the one or more normalized first parameters to a first model; and

determining whether to render the first application on the virtual display with or without a surface based on the first model, and

wherein the determining of the final state at run-time of the first application includes:

determining one or more second parameters including at least one of network accessibility, the available memory, a size of the first application, or a continuous power draw;

normalizing the one or more second parameters into a pre-determined range;

applying the one or more normalized second parameters to a second model; and

determining whether to keep the rendered first application in a hold state in which the first application is compressed and stored in memory or a ready state in which the first application is maintained in a latest state, based on the second model.

Assignments (3)
CORRECTIVE ASSIGNMENT TO CORRECT THE 4TH ASSIGNOR'S NAME PREVIOUSLY RECORDED AT REEL: 59735 FRAME: 33. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT . Recorded Apr 18, 2025
From: MUTALIK, SRIPURNA; SHETTY, MANITH; KANUKOTLA, ANURADHA; AGARWAL, SUMEEN; MUTYALA, NARENDRA; MOORTHY, NARESH KUMAR NARASIMMA; NITTUR, PAVAN; GUPTA, MAYANK; JUNG, KWANJIN
To: SAMSUNG ELECTRONICS CO., LTD.
Reel/Frame 071614/0622 →
CORRECTIVE ASSIGNMENT TO CORRECT THE THE SECOND ASSIGNOR'S NAME PREVIOUSLY RECORDED AT REEL: 059735 FRAME: 0033. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Nov 14, 2023
From: MUTALIK, SRIPURNA; SHETTY, MANITH; KANUKOTLA, ANURADHA; AGRAWAL, SUMEEN; MUTYALA, NARENDRA; MOORTHY, NARESH KUMAR NARASIMMA; NITTUR, PAVAN; GUPTA, MAYANK; JUNG, KWANJIN
To: SAMSUNG ELECTRONICS CO., LTD.
Reel/Frame 065592/0927 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Apr 26, 2022
From: MUTALIK, SRIPURNA; SHETTY, MARTIN; KANUKOTLA, ANURADHA; AGRAWAL, SUMEEN; MUTYALA, NARENDRA; MOORTHY, NARESH KUMAR NARASIMMA; NITTUR, PAVAN; GUPTA, MAYANK; JUNG, KWANJIN
To: SAMSUNG ELECTRONICS CO., LTD.
Reel/Frame 059735/0033 →
Priority Claims (2)
IN 202141010968 · Mar 15, 2021 · national
IN 202141010968 · Jan 11, 2022 · national
Continuity (2)
Continuation PCTKR2022003226 · Mar 8, 2022
Related Publication 20220292627A1 · Sep 15, 2022
References Cited (25)
US 6359624B1 · Kunimatsu · 2002 [cited by applicant]
US 9135019B2 · Chen et al. · 2015 [cited by applicant]
US 9317212B2 · Huffman et al. · 2016 [cited by applicant]
US 9323429B2 · Lu et al. · 2016 [cited by applicant]
US 9726896B2 · Von Und Zu Liechtenstein · 2017 [cited by applicant]
US 10255057B2 · Clissold et al. · 2019 [cited by applicant]
US 10459887B1 · Dvortsov · 2019 [cited by examiner]
US 10496151B2 · Kim et al. · 2019 [cited by applicant]
US 10936340B2 · Lee et al. · 2021 [cited by applicant]
US 20090167770A1 · Navale et al. · 2009 [cited by applicant]
US 20100079472A1 · Shang et al. · 2010 [cited by applicant]
US 20140053260A1 · Gupta et al. · 2014 [cited by applicant]
US 20170357465A1 · Dzeryn · 2017 [cited by examiner]
US 20180373373A1 · Chae et al. · 2018 [cited by applicant]
US 20190087205A1 · Guday · 2019 [cited by applicant]
US 20190230186A1 · Yellin · 2019 [cited by examiner]
US 20190237003A1 · Cao et al. · 2019 [cited by applicant]
US 20190354384A1 · Huang · 2019 [cited by examiner]
US 20210064434A1 · Park · 2021 [cited by applicant]
US 20220222082A1 · Gopalakrishnan · 2022 [cited by examiner]
CN 106534519 · 2014 [cited by applicant]
CN 106406966 · 2020 [cited by applicant]
Search Report and Written Opinion issued Jun. 17, 2022 in counterpart International Patent Application No. PCT/KR2022/003226. [cited by applicant]
Office Action dated Jul. 19, 2023 in Indian Patent Application No. 202141010968 and English-language translation. [cited by applicant]
Hearing Notice dated Oct. 25, 2024 in Indian Patent Application No. 202141010968 and English-language translation. [cited by applicant]