G06F2209/5017

Compute cluster preemption within a general-purpose graphics processing unit

Embodiments described herein provide techniques enable a graphics processor to continue processing operations during the reset of a compute unit that has experienced a hardware fault. Threads and associated context state for a faulted compute unit can be migrated to another compute unit of the graphics processor and the faulting compute unit can be reset while processing operations continue.

DYNAMIC DISTRIBUTION OF A COMPUTATIONAL GRAPH

Dynamic distribution of a computational graph that defines a set of operations comprising a first subset of one or more operations and a second subset of one or more operations. In one aspect, there is a method for generating output data based on the computational graph. The method includes a first device storing information related to the computational graph, the information related to the computational graph comprising information representing the first subset of operations. The method also includes the first device receiving input data and the first device performing the first subset of operations using the received input data, thereby producing first output data corresponding to the first subset of operations. The method further includes the first device exposing the first output data as a discoverable resource so that the first output data is discoverable by other devices.

TASK SCHEDULING METHOD AND APPARATUS
20230025917 · 2023-01-26 ·

A task scheduling method and an apparatus that belongs to the field of intelligent vehicles is provided. The method may be applied to an embedded device using AUTomotive Open System Architecture (AUTOSAR), the embedded device includes a memory and a processor, the memory stores an interface function, and a first software component and a second software component are deployed in the processor. In this solution, registration information of a to-be-deployed algorithm may be obtained and parsed by using the interface function, and a task in the algorithm may be scheduled and executed by using the software component.

Method for Scheduling Hardware Accelerator and Task Scheduler
20230022294 · 2023-01-26 ·

A task scheduler is connected between a central processing unit (CPU) and each hardware accelerator. The task scheduler first obtains a target task (for example, obtains the target task from a memory), and obtains a dependency relationship between the target task and an associated task. When it is determined, based on the dependency relationship, that a first associated task (for example, a prerequisite for executing the target task is that both a task 1 and a task 2 are executed) in the associated task has been executed, it indicates that the target task meets an execution condition, and the task scheduler schedules related hardware accelerators to execute the target task. Based on a dependency relationship between tasks, the task scheduler schedules, through hardware scheduling, each hardware accelerator to execute each task, and delivery of each task is performed through direct hardware access.

Method, device and computer program product for processing computing job

A first set of requirements of a first set of computing tasks for computing resources in a computing system is acquired respectively. Based on a determination that the requirement of a computing task in the first set of computing tasks for a computing resource satisfies a resource threshold condition, the computing task is divided into a plurality of sub-tasks. The resource threshold condition describes the threshold of a computing resource provided by a computing device in a plurality of computing devices in the computing system. A merging task for merging a plurality of sub-results of the plurality of sub-tasks into a result of the computing task is generated. Based on other computing tasks than the computing task in the set of computing tasks, the plurality of sub-tasks, and the merging task, a second set of computing tasks of the computing job is determined so as to process the computing job.

Systems and methods for dynamic job performance in secure multiparty computation

Disclosed herein are systems and methods for dynamic job performance in secure multiparty computation (SMPC). The method may comprise receiving an SMPC query that indicates a processing job to be performed on a data input. The method may split the data input to generate a plurality of partial data inputs, based on parameters and the query type of the SMPC query. The method may generate a plurality of jobs to perform on the plurality of partial data inputs and determine a combined result of the processing job. The method may adjust the amount of worker processes in a worker pool based on at least one of: required computation, time of day, date, financial costs, power consumption, and available network bandwidth.

MACHINE LEARNING WORKLOAD ORCHESTRATION IN HETEROGENEOUS CLUSTERS

Systems and methods are described herein to orchestrate the execution of an application, such as a machine learning or artificial intelligence application, using distributed compute clusters with heterogeneous compute resources. A discovery subsystem may identify the different compute resources of each compute cluster. The application is divided into a plurality of workloads with each workload associated with resource demands corresponding to the compute resources of one of the compute clusters. Adaptive modeling allows for hyperparameters to be defined for each workload based on the compute resources associated with the compute cluster to which each respective workload is assigned and the associated dataset.

METHOD AND APPARATUS FOR SIGNALING INDEPENDENT PROCESSING OF MEDIA SEGMENTS ON CLOUD USING METADATA AND STARTCODE
20230019558 · 2023-01-19 · ·

A method and apparatus for performing a step-based operation in a network based media processing (NBMP) workflow. The method includes obtaining a workflow including an input media stream having a plurality of segments, identifying boundaries between the plurality of segments in the input media stream based on one of a metadata based segment boundary signaling or a code based segment boundary signaling and processing the plurality of segments based on the identified boundaries between the plurality of segments.

Executing a Quantum Logic Circuit on Multiple Processing Nodes

In a general aspect, a quantum logic circuit is executed on multiple processing nodes in a computing system that includes quantum computing resources. In some aspects, methods of operating the computing system may include obtaining a computer program that includes a quantum logic circuit. The methods may include obtaining hardware resource metadata specifying properties of processing nodes in the computing system. The processing nodes include at least a subset of the quantum computing resources, and the hardware resource metadata includes error rate information and availability information for the respective processing nodes. The methods may include generating execution tasks configured to execute the quantum logic circuit on the processing nodes based on the hardware resource metadata; dispatching the execution tasks to the processing nodes; receiving output data generated by the processing nodes; and producing an output of the computer program based on the output data.

DYNAMIC CROSS-ARCHITECTURE APPLICATION ADAPTION
20230014741 · 2023-01-19 · ·

Embodiments described herein are generally directed to improving performance of high-performance computing (HPC) or artificial intelligence (AI) workloads on cluster computer systems. According to one embodiment, a section of a high-performance computing (HPC) or artificial intelligence (AI) workload executing on a cluster computer system is identified as significant to a figure of merit (FOM) of the workload. An alternate placement among multiple heterogeneous compute resources of a node of the cluster computer system is determined for a portion of the section currently executing on a given compute resource of the multiple heterogeneous compute resources. After predicting an improvement to the FOM based on the alternate placement, the portion is relocated to the alternate placement.