FIELD OF THE DISCLOSURE

The instant disclosure relates to performance enhancement of information handling systems. More specifically, portions of this disclosure relate to automated prioritization adjustment for information handling system processes.

BACKGROUND

As the value and use of information increase, individuals and businesses seek additional ways to process and store information. One option available for such a purpose is the information handling system. An information handling system generally processes, compiles, stores, and/or communicates information or data for business, personal, or other purposes thereby allowing users to take advantage of the value of the information. Because technology and information handling requirements vary between different users or applications, information handling systems may also vary regarding what information is handled, how the information is handled, how much information is processed, stored, or communicated, and how quickly and efficiently the information may be processed, stored, or communicated. Variations in information handling system build and capabilities allow for information handling systems to be general or configured for a specific user or specific use such as financial transaction processing, airline reservations, enterprise data storage, or global communications. In addition, information handling systems may include a variety of hardware and software components that may be configured to process, store, and communicate information and may include one or more computer systems, data storage systems, and networking systems.

Information handling systems may execute multiple system processes concurrently. For example, users may run multiple applications, such as gaming applications, productivity applications, system applications, video streaming applications, communications applications, and other applications, simultaneously, and each application may include multiple associated system processes. Different processes may require allocation of different amounts of resources. Allowing processes that are unimportant to a user to consume resources and/or starving processes that are important to a user of needed resources can negatively impact a user experience. For example, starving important processes of resources can cause decreases in frame rate, network lagging, application crashes, and other negative events.

In some cases, users may manually prioritize certain processes and/or applications, configuring an information handling system to prioritize allocating resources to specific applications or processes that a user deems important. However, manual prioritization can be time consuming and may require a level of technical knowledge that users may not possess. Furthermore, such prioritization may require a user to frequently interact with a prioritization user interface to adjust priorities as usage needs change. In other cases, processes and/or applications may be automatically prioritized based on resource consumption, such that processes that consume substantial system resources are prioritized over those that do not, or based on a designation of processes as foreground and background processes, such that foreground processes are prioritized over background processes. Such prioritization, however, may negatively impact a user experience, as processes that require minimal system resources may be more important to a user than processes that require substantial system resources, and background processes may, in some cases, be more important to a user experience than foreground processes.

Shortcomings mentioned here are only representative and are included simply to highlight that a need exists for improved information handling systems. Embodiments described herein address certain shortcomings but not necessarily each and every one described here or known in the art. Furthermore, embodiments described herein may present other benefits than, and be used in other applications than, those of the shortcomings described above.

SUMMARY

Settings on an information handling system may be adjusted to set priority levels for processes executing on the information handling system in view of desired operational characteristics of the information handling system for a user persona and in view of expected future events for the information handling system. In some embodiments, a score may be generated based on a user persona (e.g., whether a user is a light gamer, heavy gamer, corridor warrior, or desk worker) and expected future computer contexts (e.g., an expectation that a user will play a game in one hour). That score may be used to determine policies (e.g., high performance, balanced, or battery saver) to implement through settings on the computer system. Consideration of user persona classifications, associated group behaviors, and dynamic system contexts (including resource extremas, location, temporal context, and predicted future events) improve use of information handling system resources through prioritization and governing of diverse optimization methods. The synthesis of a user experience score from telemetric sources to use for feedback generation can be used to continuously train personalized reinforcement learning algorithms to serve client intelligence use cases.

An optimization importance score may be calculated by weighting the values of sets of system effects relative to their impact to key performance indicators (KPIs) particular to a user based on a user's persona, that persona's KPIs, and the information handling system's system state, system history, and system context. This score provides a relative indicator to the KPIs of system components to be used in evaluating which optimization to be applied to a given system. For example, a gamer belonging to a persona of visual enthusiasts (an “Immersive Gamer”) has a baseline KPI importance matrix that is weighted towards graphics quality, stable performance, low skin temperatures, and communication-optimized networking.

In some embodiments, a user experience score is determined from telemetry data to generate a closed loop on reinforcement learning systems without requiring user engagement. User experience scoring is, at a high level, the reward function for machine learning algorithms to determine whether a policy (and the resulting outcome) was desired or not. Therefore, a positive score reinforces the prediction when encountered with a similar input state, while a negative score allows the algorithm to explore other outcomes. The score may be calculated by synthesizing various telemetric features relevant to a particular outcome reached by a generated policy. The importance/relevance of an outcome is evaluated by incorporating the user's persona and system context features and incorporated into the outcome score.

For example, a reinforcement learning algorithm targeted at learning a user's system startup behaviors could use a reward function that assigned a positive score to correctly predicting which applications and files the user would open and placing them in the correct locations on screen, with a negative score being assigned for applications/files that are closed by the user without interaction or moved to a different location on the screen. Additionally, the algorithm making the prediction may not act on it to assess correctness of a generated policy. If the user manually reaches a predicted state by their own action, the model can assign a positive score to its predicted policy and predict with a higher confidence in subsequent scenarios. Further embodiment illustrations and telemetry features may be found in the subsequent material.

In one embodiment, a method may include determining a user persona based on a user's usage of the information handling system. A priority level for processes executing on the information handling system may be determined based on the user persona. Processes executed on the information handling system may be adjusted based on the determined priority level by adjusting one or more settings of the information handling system, such as through adjusting the operating system. In some embodiments, the priority levels may also be adjusted based on future expected events determined from the user's persona or telemetry data. Reinforcement learning may be applied by monitoring performance parameters of the information handling system after the adjustment and adjusting policies based on the monitored performance parameters, in which the policies are used to determine priority levels of future executing processes. An information handling system may include a memory and a processor for performing the steps described herein. Instructions for performing the steps described herein may be stored on a non-transitory computer readable medium.

The foregoing has outlined rather broadly certain features and technical advantages of embodiments of the present invention in order that the detailed description that follows may be better understood. Additional features and advantages will be described hereinafter that form the subject of the claims of the invention. It should be appreciated by those having ordinary skill in the art that the conception and specific embodiment disclosed may be readily utilized as a basis for modifying or designing other structures for carrying out the same or similar purposes. It should also be realized by those having ordinary skill in the art that such equivalent constructions do not depart from the spirit and scope of the invention as set forth in the appended claims. Additional features will be better understood from the following description when considered in connection with the accompanying figures. It is to be expressly understood, however, that each of the figures is provided for the purpose of illustration and description only and is not intended to limit the present invention.

