| CPC G06F 9/5016 (2013.01) [G06F 9/44505 (2013.01); G06F 9/5033 (2013.01); G06F 9/5038 (2013.01)] | 11 Claims |

|
1. A method of improving efficiency of resource utilization in an embedded computing system executing Artificial Intelligence (AI) applications, the method comprising:
detecting launch of an AI application;
retrieving, by an optimization unit comprising processing circuitry and/or executable program instructions configured in the embedded computing system, runtime profiles corresponding to the AI application and one or more related AI applications,
wherein the one or more related AI applications are related to the AI application based on historical usage preferences,
wherein the runtime profiles indicates resource requirements for executing the AI application and the one or more related AI applications, wherein the runtime profiles for the AI application and the one or more related AI applications are based on one or more system state parameters-related to the AI application,
wherein the one or more system state parameters include at least one of power consumption, performance mode chosen by a user of the AI application, or assessment of Random Access Memory (RAM) availability in the embedded computing system;
determining, by the optimization unit, whether the retrieved runtime profiles match current runtime profiles for the AI application and the one or more related AI applications;
based on a match being determined, configuring, by the optimization unit, a runtime environment of the embedded computing system by allocating resources for executing the AI application and the one or more related the AI applications based on the retrieved runtime profiles;
identifying, by an optimization unit, a runtime status of the AI application, wherein the runtime status includes at least one of a foreground instance, a background instance, or closed;
based on the runtime status of the AI application being the background instance or closed, detecting, by the optimization unit, that the AI application is predicted to be launched;
identifying, by the optimization unit, a performance status of the AI application, wherein the performance status is categorized according to resource usage levels; and
holding or releasing resources for the AI application according to the identified the performance status.
|