G06F9/4831

MULTI CRITERIA DECISION ANALYSIS FOR DETERMINING PRIORITIZATION OF VIRTUAL COMPUTING RESOURCES FOR SCHEDULING OPERATIONS
20220318041 · 2022-10-06 ·

An apparatus comprises a processing device configured to select prioritization criteria for a plurality of virtual computing resources and to determine, for at least one criterion in the selected prioritization criteria, at least one directional correlation between the at least one criterion and at least one other criterion in the selected prioritization criteria. The processing device is also configured to generate a prioritization of the plurality of virtual computing resources utilizing a multi-criteria decision analysis algorithm. The multi-criteria decision analysis algorithm is based at least in part on the determined at least one directional correlation. The processing device is further configured to perform one or more scheduling operations for the plurality of virtual computing resources based at least in part on the generated prioritization of the plurality of virtual computing resources.

DYNAMIC PROCESS CRITICALITY SCORING

There is disclosed in one example a computer apparatus, including: a hardware platform including a central processor unit (CPU) and a memory; and instructions encoded within the memory to instruct the CPU to: enumerate a plurality of running processes, and associate resource demands with the running processes; predict a resource starvation condition for at least one process; rank the plurality of running processes according to a dynamic ranking algorithm, wherein the ranking algorithm includes user engagement as an input for ranking a process; and according to the ranking and a safeguard algorithm, deallocate resources from a process ranked lower than the at least one process and assign the deallocated resources to the at least one process to mitigate the predicted resource starvation condition.

Thread Management Method and Apparatus
20230147786 · 2023-05-11 ·

In a thread management method, an application first information to an operating system through an API. The first information is used to indicate at least one first task to be executed by the application. The operating system allocates, by using the first information, the at least one first task to be executed by the application to a corresponding first task queue, and allocates a thread to the first task queue based on a current load level of the operating system and a type of the first task queue.

Work scheduling on candidate collections of processing units selected according to a criterion

In some examples, a system receives a first unit of work to be scheduled in the system that includes a plurality of collections of processing units to execute units of work, where each respective collection of processing units of the plurality of collections of processing units is associated with a corresponding scheduling queue. The system selects, for the first unit of work according to a first criterion, candidate collections from among the plurality of collections of processing units, and enqueues the first unit of work in a schedule queue associated with a selected collection of processing units that is selected, according to a selection criterion, from among the candidate collections.

Efficient selection of a particular processor thread for handling an interrupt

A plurality of virtual processor threads are executed on the plurality of physical processor threads. In a data structure, information pertaining to a plurality of interrupt sources in the data processing system is maintained. The information includes a historical scope of transmission of interrupt commands for an interrupt source. Based on an interrupt request from an interrupt source, an interrupt master transmits a first interrupt bus command on an interconnect fabric of the data processing system to poll one or more interrupt snoopers regarding availability of one or more of the virtual processor threads to service an interrupt. The interrupt master updates the scope of transmission specified in the data structure based on a combined response to the first interrupt bus command. The interrupt master applies the scope of transmission specified in the data structure to a subsequent second interrupt bus command for the interrupt source.

SYSTEM AND INTERRUPT HANDLING METHOD
20230133273 · 2023-05-04 ·

Embodiments of the present disclosure disclose a computing device, and are applied to the field of computing devices. In the present disclosure, a virtual interrupt obtained by a host machine is mapped to a physical interrupt of a physical layer, and a virtual interrupt identifier corresponding to the physical interrupt is transferred to a virtual processor by using the physical layer. When a hardware layer transparently transmits the virtual interrupt identifier to the virtual processor, the virtual processor does not need to exit. This decreases a delay caused by exit of the virtual processor when software implements virtual interrupt routing.

VARIABLE DISPATCH WALK

A processing unit performs a dispatch walk of a set of thread groups based on a programmable access pattern. The access pattern is stored at a table that is programmed with the access pattern based upon a specified command. By using the command to program the table with different access patterns, the dispatch order of the set of thread groups is adapted to better suit the processing of different data sets, thereby reducing power consumption at the processing unit, and improving overall processing efficiency.

Realtime hypervisor with priority interrupt support
09841993 · 2017-12-12 · ·

A problem with conventional art is that, in an environment wherein a plurality of interrupts having different priorities for processing occur in an overlapping manner from external devices, responding to high-priority interrupts while ensuring execution intervals of periodic tasks has been difficult. A partition execution control device according to the present invention comprises: a first management table which stores, for each partition, initial time slices, remaining time slices, execution priorities, execution states, and an interrupt disable level for suppressing the interrupts from the external devices; and a second management table which stores the interrupt priorities of the external devices and partitions to which the interrupts are to be output. This partition execution control device controls the execution of the partitions using the execution priorities and the time slices stored in the management tables, and controls the execution of the interrupts using the interrupt disable levels and the interrupt priorities.

Sensor-enabled prioritization of processing task requests in an environment

Method, computer program product, and system to prioritize the execution of processing task requests in a task request queue, where the processing task requests are related to an environment. The method includes adding processing task requests to a task request queue in response to the detection of predefined actions in an environment. The method also includes adding additional processing task requests or adjusting a priority level of not yet completed task requests in the task request queue, in response to detecting subsequent predefined actions in the environment.

Enhanced low-priority arbitration

A computing system may implement a low priority arbitration interrupt method that includes receiving a message signaled interrupt (MSI) message from an input output hub (I/O hub) transmitted over an interconnect fabric, selecting a processor to interrupt from a cluster of processors based on arbitration parameters, and communicating an interrupt service routine to the selected processor, wherein the I/O hub and the cluster of processors are located within a common domain.