Application-transparent resolution control by way of command stream interception
Abstract
A method for controlling one or more of image resolution or FPS in graphics systems at runtime includes providing a computer system having a CPU, one or more of an integrated or a discrete GPU, a display to display images, a non-transitory computer readable system memory and at least one application running on the computer system that generates at least one of a stream of graphic library commands and/or shader codes at run time to display images at a given resolution and a given FPS; intercepting the stream of graphics library commands and/or shaders codes generated by the running application at run time. In the event that an on-the-fly change of one or more of resolution or FPS is desired for keeping a user's experience above a predefined minimal level of playability while maintaining desired power conservation, one or more of the following is modified: (a) the resolution by modification of one or more of the shader code, or graphics library commands; or (b) the FPS.
Claims
exact text as granted — not AI-modifiedWhat is claimed is:
1 . A method for controlling one or more of image resolution or FPS in graphics systems at runtime comprising:
providing a computer system having a CPU, one or more of an integrated or a discrete GPU, a display to display images, a non-transitory computer readable system memory and at least one application running on the computer system that generates at least one of a stream of graphic library commands and/or shader codes at run time to display images at a given resolution and a given FPS; intercepting the stream of graphics library commands and/or shaders codes generated by the running application at run time; in the event that an on-the-fly change of one or more of resolution or FPS is desired for keeping a user's experience above a predefined minimal level of playability while maintaining desired power conservation, modifying one or more of: (a) the resolution by modification of one or more of the shader code, or graphics library commands; or (b) the FPS.
2 . The method of claim 1 , wherein the computer system comprises a mobile device.
3 . The method of claim 2 , wherein the mobile device is one of a tablet or a phone device.
4 . The method of claim 1 , additionally comprising a predefined minimal level of playability.
5 . The method of claim 1 , wherein minimal and maximal levels of playability are defined by two levels of thresholds.
6 . The method of claim 5 , wherein the thresholds are set by one or more of: the user or the computer system vendor.
7 . The method of claim 1 , wherein the step of intercepting includes intercepting the GPU load, the CPU load and the FPS, further comprising the step of determining if the FPS is GPU bound.
8 . The method of claim 7 , wherein the step of determining whether the FPS is GPU bound further includes the steps of: (a) if the FPS is not GPU bound, keeping the resolution as it is; and (b) if the FPS is GPU bound, modifying the FPS.
9 . The method of claim 6 , wherein the thresholds are related to power conservation.
10 . The method of claim 2 , wherein the mobile device is battery driven and further comprising the steps of: (a) assessing the battery level; and (b) depending on the battery level, adjusting the FPS.
11 . The method of claim 10 , further comprising the step of lowering the FPS if the battery level drops below a defined threshold.
12 . The method of claim 1 , wherein the user's experience depends on one or more of the FPS, image resolution and backlight.
13 . The method of claim 1 wherein the steps of intercepting and modifying are application transparent.
14 . The method of claim 1 , wherein the FPS and resolution are inversely proportional to one another, such that the step of modifying includes either raising the FPS while lowering the resolution or raising the resolution while lowering the FPS.
15 . The method of claim 6 , further comprising the step of the user setting the FPS.
16 . The method of claim 1 , further comprising the step of (c) modifying the display brightness.
17 . The method of claim 16 , wherein modifying the display brightness comprises lowering the screen brightness.
18 . A method of controlling one or more of image resolution or FPS at runtime comprising:
providing a mobile system having a CPU, one or more or an integrated or discrete GPU, a display to display images, one or more batteries for providing power to the mobile system, and at least one application running on the mobile system that generates commands to display images at a given resolution and a given FPS; further providing on the mobile device an interface that allows control of one or more of the resolution and FPS of a set of images displayed on the mobile device; predefining a threshold for setting the resolution and FPS of the set of images displayed on the mobile device; and, in the event that an on-the-fly change of one or more of resolution or FPS is desired for keeping a user's experience above a desired level of playability while maintaining desired power conservation, changing one or more of the resolution or the FPS of the set of images displayed on the mobile device.
19 . The method of claim 18 , wherein the computer system comprises a mobile device.
20 . The method of claim 19 , wherein the mobile device is one of a tablet or a phone device.
21 . The method of claim 18 , additionally comprising a predefined minimal level of playability.
22 . The method of claim 18 , wherein minimal and maximal levels of playability are defined by two levels of thresholds.
23 . The method of claim 22 , wherein the thresholds are set by one or more of: the user or the computer system vendor.
24 . The method of claim 18 , further comprising the step of modifying the display brightness.
25 . The method of claim 24 , wherein modifying the display brightness comprises lowering the screen brightness.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.