CPC G06F 9/4887 (2013.01) [G06F 9/4818 (2013.01); G06F 9/4881 (2013.01); G06T 1/20 (2013.01)] | 17 Claims |
1. A method of controlling operation of a GPU, the method comprising:
whilst executing a first GPU task having a first predefined priority value and in response to a second GPU task having a second predefined priority value becoming ready to run, determining which of the first GPU task and the second GPU task has a higher priority based on the first and second predefined priority values, wherein the first predefined priority value is defined prior to execution of the first task and the second predefined priority value is defined prior to execution of the second task; and
in response to determining that the second GPU task has a higher priority than the currently executing first GPU task:
estimating a completion time for each of the first, lower priority GPU task and the second, higher priority GPU task,
identifying a deadline associated with the second, higher priority GPU task,
determining, using the estimated completion times, whether both the first, lower priority GPU task and the second, higher priority GPU task can be completed before the deadline associated with the second, higher priority GPU task,
in response to determining that both the first, lower priority GPU task and the second, higher priority GPU task cannot be completed before the deadline associated with the second, higher priority GPU task, changing the operation of the GPU to increase an operating frequency of the GPU and allowing the first, lower priority GPU task to continue execution before executing the second, higher priority GPU task, and
in response to determining that both the first, lower priority GPU task and the second, higher priority GPU task can be completed before the deadline associated with the second, higher priority GPU task, allowing the first, lower priority GPU task to continue execution.
|