EXECUTING A NEURAL NETWORK GRAPH USING A NON-HOMOGENOUS SET OF RECONFIGURABLE PROCESSORS

    公开(公告)号:US20220198117A1

    公开(公告)日:2022-06-23

    申请号:US17586571

    申请日:2022-01-27

    摘要: A system for executing a graph partitioned across a plurality of reconfigurable computing units includes a processing node that has a first computing unit reconfigurable at a first level of configuration granularity and a second computing unit reconfigurable at a second, finer, level of configuration granularity. The first computing unit is configured by a host system to execute a first dataflow segment of the graph using one or more dataflow pipelines to generate a first intermediate result and to provide the first intermediate result to the second computing unit without passing through the host system. The second computing unit is configured by the host system to execute a second dataflow segment of the graph, dependent upon the first intermediate result, to generate a second intermediate result and to send the second intermediate result to a third computing unit, without passing through the host system, to continue execution of the graph.

    Dataflow Function Offload to Reconfigurable Processors

    公开(公告)号:US20220198114A1

    公开(公告)日:2022-06-23

    申请号:US17379921

    申请日:2021-07-19

    IPC分类号: G06F30/34 G06F13/16 G06F13/28

    摘要: Roughly described, the invention involves a system including a plurality of functional units that execute different segments of a dataflow, and share intermediate results via a peer-to-peer messaging protocol. The functional units are reconfigurable, with different units being reconfigurable at different levels of granularity. The peer-to-peer messaging protocol includes control tokens or other mechanisms by which the consumer of the intermediate results learns that data has been transferred, and in response thereto triggers its next dataflow segment. A host or configuration controller configures the data units with their respective dataflow segments, but once execution of the configured dataflow begins, no host need be involved in orchestrating data synchronization, the transfer of intermediate results, or the triggering of processing after the data are received. Control overhead is therefore minimized

    System for the Remote Execution of Applications

    公开(公告)号:US20230333879A1

    公开(公告)日:2023-10-19

    申请号:US18133632

    申请日:2023-04-12

    IPC分类号: G06F9/48 G06F9/445 G06F9/50

    摘要: A data processing system is presented that is configured as a server in a client-server configuration for executing applications that a client in the client-server configuration can offload as execution tasks for execution on the server. The data processing system includes a reconfigurable processor, a storage device that stores configuration files for the applications, and a host processor that is coupled to the storage device and to the reconfigurable processor. The host processor is configured to receive an execution task of the execution tasks with an identifier of an application from the client, retrieve a configuration file that is associated with the application from the storage device using the identifier of the application, configure the reconfigurable processor with the configuration file, and start execution of the application on the reconfigurable processor, whereby the reconfigurable processor provides output data of the execution of the application to the client.

    System and Method for User Interactive Pipelining of a Computing Application

    公开(公告)号:US20230205613A1

    公开(公告)日:2023-06-29

    申请号:US18087104

    申请日:2022-12-22

    IPC分类号: G06F9/54 G06F9/50

    CPC分类号: G06F9/544 G06F9/5016

    摘要: A method of pipelining execution stages of a pipelined application can comprise a Buffer Pipeline Manager (BPM) of a Buffer Pipelined Application computing System (BPAS) allocating pipeline buffers, configuring access to the pipeline buffers by stage processors of the system, transferring buffers from one stage processor to a successor stage processor, and transferring data from a buffer in one memory to a buffer in an alternative memory. The BPM can allocate the buffers based on execution parameters associated with the pipelined application and/or stage processors. The BPM can transfer data to a buffer in an alternative memory based on performance, capacity, and/or topological attributes of the memories and/or processors utilizing the memories. The BPM can perform operations of the method responsive to interfaces of a Pipeline Programming Interface (PPI). A BPAS can comprise hardware processors, physical memories, stage processors, an application execution program, the PPI, and the BPM.

    DEBUGGING FRAMEWORK FOR A RECONFIGURABLE DATA PROCESSOR

    公开(公告)号:US20240338297A1

    公开(公告)日:2024-10-10

    申请号:US18244677

    申请日:2023-09-11

    IPC分类号: G06F11/36 G06F15/78

    摘要: A data processing system includes an array of reconfigurable units and a compiler configured to generate one or more configuration files for an application for execution on one or more reconfigurable processors. The data processing system further includes an execution flow logic which is configured to cause execution of the configuration files on the reconfigurable processors to be dependent upon one or more breakpoint conditions. The data processing further includes a runtime logic configured to execute the configuration files depending upon the breakpoint conditions. A corresponding method is also disclosed herein.

    Time-Multiplexed use of Reconfigurable Hardware

    公开(公告)号:US20220269534A1

    公开(公告)日:2022-08-25

    申请号:US17185264

    申请日:2021-02-25

    IPC分类号: G06F9/48 G06F9/38

    摘要: A method for executing applications in a system comprising general hardware and reconfigurable hardware includes accessing a first execution file comprising metadata storing a first priority indicator associated with a first application, and a second execution file comprising metadata storing a second priority indicator associated with a second application. In an example, use of the reconfigurable hardware is interleaved between the first application and the second application, and the interleaving is scheduled to take into account (i) workload of the reconfigurable hardware and (ii) the first priority indicator and the second priority indicator associated with the first application and the second application, respectively. In an example, when the reconfigurable hardware is used by one of the first and second applications, the general hardware is used by another of the first and second applications.

    TRAINING A NEURAL NETWORK USING A NON-HOMOGENOUS SET OF RECONFIGURABLE PROCESSORS

    公开(公告)号:US20220197714A1

    公开(公告)日:2022-06-23

    申请号:US17582925

    申请日:2022-01-24

    IPC分类号: G06F9/50 G06F9/455 G06N3/02

    摘要: A system for training parameters of a neural network includes a processing node with a processor reconfigurable at a first level of configuration granularity and a controller reconfigurable at a finer level of configuration granularity. The processor is configured to execute a first dataflow segment of the neural network with training data to generate a predicted output value using a set of neural network parameters, calculate a first intermediate result for a parameter based on the predicted output value, a target output value, and a parameter gradient, and provide the first intermediate result to the controller. The controller is configured to receive a second intermediate result over a network, and execute a second dataflow segment, dependent upon the first intermediate result and the second intermediate result, to generate a third intermediate result indicative of an update of the parameter.

    Load Balancing System for the Execution of Applications on Reconfigurable Processors

    公开(公告)号:US20230388373A1

    公开(公告)日:2023-11-30

    申请号:US18200311

    申请日:2023-05-22

    IPC分类号: H04L67/1014 H04L67/1097

    CPC分类号: H04L67/1014 H04L67/1097

    摘要: A data processing system is presented in a client-server configuration for executing first and second applications that a client in the client-server configuration can offload for execution onto the data processing system. The data processing system includes a server and a pool of reconfigurable data flow resources that is configured to execute the first application in a first runtime context and the second application in a second runtime context. The server is configured to establish a session with the client, receive first and second execution requests for executing the first application and the second application from the client, start respective first and second execution of the first and second applications in the respective first and second runtime contexts in response to receiving the first and second execution requests, and balance a first load from the first execution with a second load from the second execution.