G06F9/4843

COMPUTER-READABLE RECORDING MEDIUM STORING APPLICATION CONTROL PROGRAM AND APPLICATION CONTROL METHOD
20230043057 · 2023-02-09 · ·

A recording medium stores an application control program for causing a computer to execute processing including: when a specific application included in a applications is executed in response to a processing request from a specific processing request source, referring to a storage unit that stores flow information that indicates a past execution order of the applications for each of the processing request sources of the applications, and calculating an execution probability that each of one or more applications that are likely to be executed after the specific application executed in response to the processing request from the specific processing request source among the applications is executed after the specific application executed in response to the processing request from the specific processing request source; specifying an application to be activated from the one or more applications based on the calculated execution probability; and activating the specified application to be activated.

System and method for appraising resource configuration
11556383 · 2023-01-17 · ·

To more properly size resources in a destination to which IT resources will be migrated, a system for appraising a resource configuration estimates a source's load model representing a load of first resources in a first computer system which is the source of migration and estimates a destination's load model representing a load of second resources to be built by migrating the first resources to a second computer system based on the source's load model. The system compares performance requirements of the first resources against the destination's load model and finds the destination's load model that is conformable to the performance requirements. When determining design values of the second resources' configuration, the system corrects those design values based on the destination's load model estimated conformable to the performance requirements to decrease design margins of the resource configuration using a design correction value defined to meet a service level requested.

Improving performance of multi-processor computer systems

Embodiments of the invention may improve the performance of multi-processor systems in processing information received via a network. For example, some embodiments may enable configuration of a system such that information received via a network may be distributed among multiple processors for efficient processing. A user (e.g., system administrator) may select from among multiple configuration options, each configuration option being associated with a particular mode of processing information received via a network. By selecting a configuration option, the user may specify how information received via the network is processed to capitalize on the system's characteristics, such as by aligning processors on the system with certain NICs. As such, the processor(s) aligned with a NIC may perform networking-related tasks associated with information received by that NIC. If initial alignment causes one or more processors to become over-burdened, processing tasks may be dynamically re-distributed to other processors so as to achieve a more even distribution of the overall processing burden across the system.

Hardware accelerated dynamic work creation on a graphics processing unit

A processor core is configured to execute a parent task that is described by a data structure stored in a memory. A coprocessor is configured to dispatch a child task to the at least one processor core in response to the coprocessor receiving a request from the parent task concurrently with the parent task executing on the at least one processor core. In some cases, the parent task registers the child task in a task pool and the child task is a future task that is configured to monitor a completion object and enqueue another task associated with the future task in response to detecting the completion object. The future task is configured to self-enqueue by adding a continuation future task to a continuation queue for subsequent execution in response to the future task failing to detect the completion object.

Instruction packing scheme for VLIW CPU architecture

A processor is provided and includes a core that is configured to perform a decode operation on a multi-instruction packet comprising multiple instructions. The decode operation includes receiving the multi-instruction packet that includes first and second instructions. The first instruction includes a primary portion at a fixed first location and a secondary portion. The second instruction includes a primary portion at a fixed second location between the primary portion of the first instruction and the secondary portion of the first instruction. An operational code portion of the primary portion of each of the first and second instructions is accessed and decoded. An instruction packet including the primary and secondary portions of the first instruction is created, and a second instruction packet including the primary portion of the second instruction is created. The first and second instructions packets are dispatched to respective first and second functional units.

Surrogate process creation technique for high process-per-server scenarios

A system and method for launching parallel processes on a server configured to process a number of parallel processes. A request is received from a parallel application to start a number of parallel processes. In response to this request a launcher creates a surrogate. The surrogate inherits communications channels from the launcher. The surrogate then executes activities related to the launch of the parallel processes, and then launches the parallel processes. The parallel processes are launched and the surrogate is terminated.

TECHNIQUES FOR HYBRID COMPUTER THREAD CREATION AND MANAGEMENT
20180004554 · 2018-01-04 ·

A technique for operating a computer system to support an application, a first application server environment, and a second application server environment includes intercepting a work request relating to the application issued to the first application server environment prior to execution of the work request. A thread adapted for execution in the first application server environment is created. A context is attached to the thread that non-disruptively modifies the thread into a hybrid thread that is additionally suitable for execution in the second application server environment. The hybrid thread is returned to the first application server environment.

JOB SCHEDULING MANAGEMENT
20180011743 · 2018-01-11 ·

Resource utilization data for a set of system components of a computing system is collected. The resource utilization data includes performance records for a set of jobs. By analyzing the collected resource utilization data for the set of system components, a resource allocation is identified for a particular job of the set of jobs. A first execution time for the particular job is determined based on the resource allocation for the particular job and the resource utilization data for the set of system components. A location at which to execute the particular job is determined based on how the particular job has been executed at the location previously. The first execution time may be a time when the computer system achieves a resource availability threshold with respect to the resource allocation. Aspects are also directed toward performing the particular job at the first execution time.

SHADOW COMMAND RING FOR GRAPHICS PROCESSOR VIRTUALIZATION
20180011729 · 2018-01-11 ·

A shadow command ring is described for graphics processor virtualization. In one example a command batch is loaded from a virtual machine of a general purpose processor into a physical command ring of a graphics processor. A physical tail pointer register of the graphics processor is set and the command batch and the physical tail pointer are trapped at a mediator. The mediator copies the trapped command batch and the physical tail pointer in a shadow command ring and sets a virtual tail pointer. The execution of the physical command ring is monitored and if an error is determined then the physical command ring is cleared and reloaded using the shadow command ring.

Work conserving, load balancing, and scheduling

A system and method are described for work conserving, load balancing, and scheduling by a network processor. For example, one embodiment of a system includes a plurality of processing cores, including a scheduling circuit, at least one source processing core that generates at least one task and at least one destination processing core that receives and processes the at least one task, and generates a response. The scheduling circuit of the exemplary system receives the at least one task and conducts a load balancing to select the at least one destination processing core. In an embodiment, the scheduling circuit further detects a critical sequences of tasks, schedules those tasks to be processed by a single destination processing core, and, upon completion of the critical sequence, conducts another load balancing to potentially select a different processing core to process more tasks.