CN101505319B - Method for accelerating adaptive reconfigurable processing unit array system based on network - Google Patents
Method for accelerating adaptive reconfigurable processing unit array system based on network Download PDFInfo
- Publication number
- CN101505319B CN101505319B CN2009100959563A CN200910095956A CN101505319B CN 101505319 B CN101505319 B CN 101505319B CN 2009100959563 A CN2009100959563 A CN 2009100959563A CN 200910095956 A CN200910095956 A CN 200910095956A CN 101505319 B CN101505319 B CN 101505319B
- Authority
- CN
- China
- Prior art keywords
- node
- task
- processing unit
- network
- restructural
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
- 238000012545 processing Methods 0.000 title claims abstract description 32
- 230000003044 adaptive effect Effects 0.000 title claims abstract description 29
- 238000000034 method Methods 0.000 title claims abstract description 16
- 238000004891 communication Methods 0.000 claims description 10
- 230000005540 biological transmission Effects 0.000 claims description 3
- 230000002093 peripheral effect Effects 0.000 claims description 3
- 230000001133 acceleration Effects 0.000 abstract description 3
- 238000005516 engineering process Methods 0.000 description 8
- 238000012544 monitoring process Methods 0.000 description 4
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000004519 manufacturing process Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Images
Landscapes
- Multi Processors (AREA)
- Computer And Data Communications (AREA)
Abstract
本发明公开了一种基于网络的自适应可重构处理单元阵列系统加速的方法。是通过通用处理器和可重构设备组成的计算节点,组成一个自适应可重构处理单元网络。要执行的程序被划分成可以独立运行的任务的集合,任务集合中的每一个任务通过自适应可重构处理单元网络进行分发,找到合适的计算资源执行,并利用可重构设备的高效和灵活的特性,进行重构,使可重构设备的功能满足不同任务的需要。在自适应可重构处理单元网络的作用下,基于网络的自适应可重构处理单元阵列系统会根据网络上节点的情况,对任务进行智能分配,优先将任务分配到其他计算资源处于空闲的节点,从而减少程序的执行时间,提高可重构设备的利用率,达到程序加速的目的。
The invention discloses a method for speeding up an adaptive reconfigurable processing unit array system based on a network. It is a computing node composed of general-purpose processors and reconfigurable devices to form an adaptive reconfigurable processing unit network. The program to be executed is divided into a set of tasks that can run independently. Each task in the task set is distributed through an adaptive reconfigurable processing unit network to find suitable computing resources for execution, and utilize the high efficiency and Flexible features, reconfiguration, so that the functions of the reconfigurable device can meet the needs of different tasks. Under the action of the adaptive reconfigurable processing unit network, the network-based adaptive reconfigurable processing unit array system will intelligently allocate tasks according to the conditions of the nodes on the network, and give priority to assigning tasks to other computing resources that are idle. Node, thereby reducing the execution time of the program, improving the utilization rate of the reconfigurable device, and achieving the purpose of program acceleration.
Description
技术领域technical field
本发明涉及多核技术领域和可重构技术领域,特别是涉及一种基于网络通信的可重构多核加速程序执行的实现方法。The invention relates to the field of multi-core technology and the field of reconfigurable technology, in particular to a method for implementing a reconfigurable multi-core accelerated program execution based on network communication.
背景技术Background technique
随着计算机制造工艺水平的不断提高,超大规模集成电路技术取得长足进步,多核技术已经成为现行主流的处理器技术。但是随着处理器核的数量的不断增多,如何提高这些核的利用率成为了一个难题。With the continuous improvement of computer manufacturing technology, VLSI technology has made great progress, and multi-core technology has become the current mainstream processor technology. However, as the number of processor cores continues to increase, how to improve the utilization of these cores has become a difficult problem.
由于一般应用程序的并行度不高,通常认为处理器通用核的数目超过16个后,增加通用处理核的数目就难以带来性能的提升。Since the parallelism of general application programs is not high, it is generally believed that after the number of general-purpose cores of the processor exceeds 16, it is difficult to improve performance by increasing the number of general-purpose processing cores.
在异构多核处理器中,可以集成一些为特别任务专门定制的专用核,从而能达到定制应用的高性能,但是这种定制异构多核处理器只有在运行所面向的应用时才能获得好的性能,否则性能不通用处理核更低。In heterogeneous multi-core processors, some special-purpose cores specially customized for special tasks can be integrated, so as to achieve the high performance of customized applications, but this kind of customized heterogeneous multi-core processors can only achieve good performance when running the targeted applications Performance, otherwise the performance is not as good as the general processing core.
可重构技术的出现,使得通用处理器集成基于FPGA的可重构核提供了另一种解决方案。在保留通用处理器适应多数应用的高灵活性的同时,获得了专用处理器的高性能和高效率。同时,可重构核可以通过重配置来支持各种不同类型的应用,从而能更加灵活地应用于各种不同的程序。The emergence of reconfigurable technology makes general-purpose processors integrate FPGA-based reconfigurable cores to provide another solution. While retaining the high flexibility of general-purpose processors to adapt to most applications, the high performance and high efficiency of special-purpose processors are obtained. At the same time, the reconfigurable core can support various types of applications through reconfiguration, so that it can be more flexibly applied to various programs.
但是一个孤立节点没有足够的能力和灵活性去处理有些应用程序。But an isolated node does not have enough power and flexibility to handle some applications.
可重构资源不足:当应用程序所需要的可重构资源超过了一个孤立节点所拥有的,在这种情况下,应用程序的一些请求必需被挂起,直到被占用的可重构资源被释放并且重新配置后才能继续进行,这样一来便降低了性能和效率。Insufficient reconfigurable resources: When the application needs more reconfigurable resources than an isolated node has, in this case, some requests of the application must be suspended until the occupied reconfigurable resources are It must be freed and reconfigured before proceeding, which reduces performance and efficiency.
可重构资源的浪费:当应用程序不适合可重构设备,那么节点的可重构资源就被闲置浪费。Waste of reconfigurable resources: When the application program is not suitable for reconfigurable devices, the reconfigurable resources of the node are idle and wasted.
频繁重配置的高代价:当应用程序频繁地调用的功能模块不能在可重构设备上同时提供,这需要频繁地将可重构设备上的功能模块进行切换,导致频繁的重配置,从而使得性能和效率下降。High cost of frequent reconfiguration: When the functional modules frequently called by the application cannot be provided on the reconfigurable device at the same time, this requires frequent switching of the functional modules on the reconfigurable device, resulting in frequent reconfiguration, which makes Performance and efficiency drop.
发明内容Contents of the invention
本发明的目的在于提供一种基于网络的自适应可重构处理单元阵列加速方法。The purpose of the present invention is to provide a network-based acceleration method for an adaptive reconfigurable processing unit array.
本发明解决其技术问题采用的技术方案如下:The technical scheme that the present invention solves its technical problem adopts is as follows:
1)原始程序的任务划分:1) Task division of the original program:
系统将一个程序分割为能独立运行的任务的集合;The system divides a program into a collection of tasks that can run independently;
2)搭建基于宏网络的自适应可重构处理单元阵列:2) Build an adaptive reconfigurable processing unit array based on the macro network:
基于网络的自适应可重构处理单元阵列由n个节点组成,n∈[1,2,3…),每个节点有0-4个通过以太网直接相连接的邻居节点,每个节点由两部分组成,第一部分是一台通用计算机,第二部分是可重构设备NetFPGA;The network-based adaptive reconfigurable processing unit array is composed of n nodes, n ∈ [1, 2, 3...), each node has 0-4 neighbor nodes directly connected via Ethernet, and each node is composed of It consists of two parts, the first part is a general-purpose computer, and the second part is a reconfigurable device NetFPGA;
根据要在可重构设备上执行的任务,初始化可重构设备;Initialize the reconfigurable device according to the tasks to be performed on the reconfigurable device;
3)任务的分发:3) Distribution of tasks:
对于任何一个基于宏网络的自适应可重构处理单元阵列中的节点来说,自己为本地节点,其余节点为远程节点;For any node in the macro-network-based adaptive reconfigurable processing unit array, itself is a local node, and other nodes are remote nodes;
任务的分发,就是将程序中的任务集合中的任务分发给本地节点的计算资源和远程节点的计算资源;Task distribution is to distribute the tasks in the task set in the program to the computing resources of the local node and the computing resources of the remote node;
4)可重构设备功能的改变:4) Changes in the function of reconfigurable equipment:
对于n个节点中任意一个节点的可重构设备来说,如果可重构设备资源空闲,并且分配到的任务所需要的逻辑功能模块是当前自己不具备的,那么可重构设备需要重新配置功能模块;For the reconfigurable device of any one of the n nodes, if the resource of the reconfigurable device is idle, and the logic function module required by the assigned task is not currently available, the reconfigurable device needs to be reconfigured functional module;
5)任务的执行:5) Execution of tasks:
在任务分配之后执行任务,并在任务执行结束后返回执行结果。Execute the task after the task is assigned, and return the execution result after the task execution ends.
所述的搭建基于网络的自适应可重构置处理单元阵列步骤如下:The steps of building a network-based adaptive reconfigurable processing unit array are as follows:
1)所搭建的自适应的可重构处理单元阵列是基于100Mb或1000Mb传输速率的高速局域网络;1) The adaptive reconfigurable processing unit array built is based on a high-speed local area network with a transmission rate of 100Mb or 1000Mb;
2)所搭建的自适应的可重构处理单元阵列由n个节点组成,n∈[1,2,3…),其中每一个节点由两部分组成,第一部分是一台通用计算机,第二部分是可重构设备;2) The self-adaptive reconfigurable processing unit array is composed of n nodes, n∈[1, 2, 3...), each node is composed of two parts, the first part is a general-purpose computer, and the second Some are reconfigurable devices;
3)可重构设备NetFPGA具有4个以太网接口,所以一个节点的可重构设备可以和最多四个其他的节点通过高速局域网络直接连接,进行通信,直接连接的节点称为邻居节点,节点可以通过邻居节点和非邻居节点进行通信;3) The reconfigurable device NetFPGA has 4 Ethernet interfaces, so the reconfigurable device of one node can be directly connected with up to four other nodes through a high-speed local area network for communication. The directly connected nodes are called neighbor nodes. Can communicate through neighbor nodes and non-neighbor nodes;
4)一个节点的两个部分通用计算机和可重构设备的连接方式是通过外设组件互连标准PCI接口连接;4) The two parts of a node, the general-purpose computer and the reconfigurable device, are connected through a standard PCI interface for interconnection of peripheral components;
5)定制可重构设备上的控制模块SuperBlock;5) Customize the control module SuperBlock on the reconfigurable device;
6)初始化可重构设备上的功能模块。6) Initialize the functional modules on the reconfigurable device.
所述的可重构设备功能的改变步骤如下:The steps for changing the function of the reconfigurable device are as follows:
1)在整个基于网络的自适应可重构处理单元阵列系统开始工作之前,根据要在可重构设备上运行的任务,生成对可重构设备的配置本件;1) Before the entire network-based adaptive reconfigurable processing unit array system starts to work, according to the tasks to be run on the reconfigurable device, generate configuration files for the reconfigurable device;
2)在系统开始工作之后,随着任务的动态分配,当n个节点中任意一个节点的可重构设备要运行的任务所要求的逻辑功能块在可重构设备上不具备,则可重构设备向自己节点的主机发出重配置的请求;2) After the system starts working, with the dynamic distribution of tasks, when the logical function block required by the task to be run by the reconfigurable device of any one of the n nodes is not available on the reconfigurable device, the reconfigurable The configuration device sends a reconfiguration request to the host of its own node;
3)在主机收到自己节点的可重构设备发送的重配置请求后,主机调用程序重配置自己节点的可重构设备。3) After the host receives the reconfiguration request sent by the reconfigurable device of its own node, the host invokes a program to reconfigure the reconfigurable device of its own node.
所述的定制可重构设备上的控制模块SuperBlock担任n个节点中任意一个节点内部可重构设备和通用计算机的通信控制器的功能;担任n个节点中任意一个节点的可重构设备与邻居节点可重构设备之间的通信控制器的功能;对于在系统运行过程中,可重构设备所接收的任务分配进行管理,对任务进行处理,并记录任务所处的状态。The control module SuperBlock on the customized reconfigurable device serves as the function of the reconfigurable device inside any of the n nodes and the communication controller of the general computer; Neighboring nodes can reconfigure the functions of the communication controller between devices; manage the assignment of tasks received by the reconfigurable devices during system operation, process the tasks, and record the status of the tasks.
本发明与背景技术相比,具有的有益的效果是:Compared with the background technology, the present invention has the beneficial effects that:
本发明是基于网络通信的可重构多核加速程序执行的方法,其主要功能是利用可重构设备加强通用处理器的计算能力,加速特定功能模块的执行。利用网络的通讯,寻找网络上空闲的计算资源,一方面能缓解计算资源不够的节点的压力,另一方面又能提高整个网络上所有节点的资源利用率。The present invention is a reconfigurable multi-core accelerated program execution method based on network communication, and its main function is to use reconfigurable devices to enhance the computing power of general processors and accelerate the execution of specific function modules. Using network communication to find idle computing resources on the network, on the one hand, it can relieve the pressure on nodes with insufficient computing resources, and on the other hand, it can improve the resource utilization of all nodes on the entire network.
(1)自适应性:系统会根据网络上节点的情况,对任务进行智能分配。繁忙节点等待资源的任务会向空闲节点分配。(1) Adaptability: The system will intelligently allocate tasks according to the conditions of nodes on the network. Tasks on busy nodes waiting for resources are assigned to idle nodes.
(2)高效性:由于系统会根据网络上节点的情况进行任务的智能,所以能利用网络中空闲的资源,从而提高应用程序的性能和效率。经过实验的证明,系统能有效地提高性能。(2) Efficiency: Since the system will perform task intelligence according to the situation of the nodes on the network, it can utilize the idle resources in the network, thereby improving the performance and efficiency of the application program. The experiment proves that the system can effectively improve the performance.
附图说明Description of drawings
图1是本发明的一个实例的系统构成图。Fig. 1 is a system configuration diagram of an example of the present invention.
图2是由系统中的一个节点,由一台通用计算机和一块或多块可重构设备组成,两个组成部分之间用PCI连接。Figure 2 is a node in the system, which is composed of a general-purpose computer and one or more reconfigurable devices, and the two components are connected by PCI.
图3是流程图,表明按照本发明的任务分发的流程。Fig. 3 is a flowchart showing the flow of task distribution according to the present invention.
具体实施方式Detailed ways
方法中涉及到相关的符号解释:The method involves related symbol interpretation:
C1:能在可重构设备上运行;C1: able to run on reconfigurable devices;
C2:本地节点通用处理器空闲;C2: The general processor of the local node is idle;
C3:本地节点可重构设备空闲;C3: The reconfigurable device of the local node is idle;
C4:存在邻居节点可重构设备空闲;C4: There is a neighbor node reconfigurable device idle;
基于网络的自适应可重构处理单元阵列加速系统的具体实现流程如下。The specific implementation flow of the network-based adaptive reconfigurable processing unit array acceleration system is as follows.
第一步:原始程序的任务化:Step 1: Taskization of the original program:
1:系统将一个程序分割为可独立运行的任务的两个集合{{A},{B}},集合A表示不能够在可重构设备上运行的任务,集合B表示不能在可重构设备上运行的任务。1: The system divides a program into two sets {{A}, {B}} of tasks that can run independently. Set A represents tasks that cannot be run on reconfigurable devices, and set B represents tasks that cannot be run on reconfigurable devices. Tasks running on the device.
2:根据任务之间的依赖关系,生成任务间的依赖关系表。2: Generate a dependency table between tasks according to the dependencies between tasks.
第二步:搭建基于网络的自适应可重配置处理单元阵列:Step 2: Build a network-based adaptive reconfigurable processing unit array:
如图1所示,所搭建的自适应的可重构处理单元阵列是基于100Mb或1000Mb传输速率的高速局域网络。As shown in Figure 1, the adaptive reconfigurable processing unit array built is based on a high-speed local area network with a transmission rate of 100Mb or 1000Mb.
所搭建的自适应的可重构处理单元阵列由n个节点组成,n∈[1,2,3…),其中每一个节点由两部分组成,第一部分是一台通用计算机,第二部分是可重构设备。The self-adaptive reconfigurable processing unit array is composed of n nodes, n∈[1, 2, 3…), each node is composed of two parts, the first part is a general-purpose computer, and the second part is Reconfigurable devices.
如图2所示,一个节点的两个部分通用计算机和可重构设备的连接方式是通过外设组件互连标准PCI接口连接。As shown in Figure 2, the two parts of a node, the general-purpose computer and the reconfigurable device, are connected through a standard PCI interface for interconnecting peripheral components.
可重构设备NetFPGA具有4个以太网接口,一个节点可以和最多四个其他的节点通过高速局域网络直接连接,进行通信,直接连接的节点称为邻居节点,节点可以通过邻居节点和非邻居节点进行通信。The reconfigurable device NetFPGA has 4 Ethernet interfaces. One node can be directly connected with up to four other nodes through a high-speed local area network for communication. The directly connected nodes are called neighbor nodes, and nodes can communicate through neighbor nodes and non-neighbor nodes to communicate.
定制可重构设备上的控制模块SuperBlock,也就是编写逻辑功能模块,这个逻辑功能模块负责节点内部可重构设备和通用计算机的通信,节点的可重构设备与邻居节点可重构设备之间的通信,对于在系统运行过程中,可重构设备所接收的任务分配进行管理,对任务进行处理,并记录任务所处的状态。这个控制模块SuperBlock是固定在可重构设备上的,在可重构设备进行重配置的时候,这个控制模块在可重构设备上的部分不变。Customize the control module SuperBlock on the reconfigurable device, that is, write the logic function module. This logic function module is responsible for the communication between the reconfigurable device inside the node and the general computer, and the reconfigurable device of the node and the reconfigurable device of the neighbor node. In the process of system operation, the task distribution received by the reconfigurable device is managed, the task is processed, and the status of the task is recorded. The control module SuperBlock is fixed on the reconfigurable device. When the reconfigurable device is reconfigured, the part of the control module on the reconfigurable device remains unchanged.
初始化可重构设备上的功能模块,也就是预测要在可重构设备上执行的任务,将对应功能模块的二进制流文件烧写到可重构设备上,从而达到初始化的目的。Initialize the functional modules on the reconfigurable device, that is, predict the tasks to be performed on the reconfigurable device, and burn the binary stream file of the corresponding functional module to the reconfigurable device, so as to achieve the purpose of initialization.
第三步:任务的分发:Step 3: Distribution of tasks:
对于基于网络的自适应可重构处理单元阵列中的任何一个节点来说,自己为本地节点,其余节点为远程节点。For any node in the network-based adaptive reconfigurable processing unit array, it is a local node, and other nodes are remote nodes.
任务的分发,就是将程序中的任务集合中的任务分发给本地节点的计算资源和远程节点的计算资源。每当一个任务被分配后,将任务从任务所属的集合中删去。对于基于网络的自适应可重构处理单元阵列中的任何一个节点来说,需要处理的任务有两种,第一种来自本地节点任务集合,第二种是由邻居节点转发的任务。图3展示了这两种任务进行任务分发的流程。The distribution of tasks is to distribute the tasks in the task set in the program to the computing resources of the local node and the computing resources of the remote nodes. Whenever a task is assigned, the task is removed from the collection to which the task belongs. For any node in the network-based adaptive reconfigurable processing unit array, there are two kinds of tasks to be processed, the first is from the local node task collection, and the second is the task forwarded by neighbor nodes. Figure 3 shows the process of task distribution for these two tasks.
当本地节点任务集合中的任一任务进行任务的分发时:When any task in the local node task set distributes tasks:
1:进行分发的任务满足条件C1,这个任务进入等待队列2。1: The task to be distributed satisfies the condition C1, and this task enters the waiting queue 2.
2:进行分发的任务不满足条件C1,这个任务进入等待队列1。2: The task to be distributed does not meet the condition C1, and this task enters the waiting queue 1.
3:条件C2满足时,从等待队列1中取的一个任务执行。3: When the condition C2 is satisfied, a task taken from the waiting queue 1 is executed.
4:条件C2不满足时,从等待队列1中取的一个任务重新进入等待队列1。4: When condition C2 is not satisfied, a task taken from waiting queue 1 re-enters waiting queue 1.
当由邻居节点转发的一任务进行任务的分发时:When a task forwarded by a neighbor node distributes tasks:
1:进行分发的任务进入等待队列2。1: The task for distribution enters the waiting queue 2.
2:条件C3满足时,从等待队列2中取的一个任务执行。2: When the condition C3 is satisfied, a task taken from the waiting queue 2 is executed.
3:条件C3不满足,并且条件C4满足时,将从等待队列2中取的一个任务转发给邻居。3: When the condition C3 is not satisfied and the condition C4 is satisfied, a task taken from the waiting queue 2 is forwarded to the neighbor.
4:条件C3不满足,并且条件C4不满足时,从等待队列2中取的一个任务重新进入等待队列2。4: When the condition C3 is not satisfied and the condition C4 is not satisfied, a task taken from the waiting queue 2 re-enters the waiting queue 2.
第四步:可重构设备功能的改变:Step 4: Changes in the function of the reconfigurable device:
1:在整个基于网络的自适应可重构处理单元阵列系统开始工作之前,根据要在可重构设备上运行的任务,编写与任务相对应的逻辑功能模块。由于每个逻辑功能所要载可重构设备上占用的硬件资源的数量不同,所以可以将多个逻辑功能模块组合到一个可重构设备的配置二进制比特流文件中。1: Before the entire network-based adaptive reconfigurable processing unit array system starts working, according to the task to be run on the reconfigurable device, write the logic function module corresponding to the task. Since the number of hardware resources occupied by each logical function on the reconfigurable device is different, multiple logical function modules can be combined into a configuration binary bitstream file of the reconfigurable device.
2:在系统开始工作之后,随着任务的动态分配,当一个节点的可重构设备要运行的任务所要求的逻辑功能块在可重构设备上不具备,则可重构设备向自己节点的主机,也就是通用计算机发出重配置的请求;2: After the system starts working, with the dynamic allocation of tasks, when the logical function block required by the task to be run by a reconfigurable device of a node is not available on the reconfigurable device, the reconfigurable device will send to its own node The host, that is, the general-purpose computer sends a reconfiguration request;
3:在主机收到自己节点的可重构设备发送的重配置请求后,主机调用程序重配置自己节点的可重构设备。主机通过PCI接口将二进制配置文件下载到可重构设备上。3: After the host receives the reconfiguration request sent by the reconfigurable device of its own node, the host calls the program to reconfigure the reconfigurable device of its own node. The host computer downloads the binary configuration file to the reconfigurable device through the PCI interface.
第五步:任务的执行:Step 5: Execution of the task:
在任务分配之后执行任务,并在任务执行结束后返回执行结果。Execute the task after the task is assigned, and return the execution result after the task execution ends.
1:如果任务在通用计算机上执行,则任务执行结束后,将执行的结果返回监视进程,再由监视进程将结果返回给任务的调用进程。1: If the task is executed on a general-purpose computer, after the execution of the task is completed, the execution result will be returned to the monitoring process, and then the monitoring process will return the result to the calling process of the task.
2:如果任务在可重构设备上执行,则任务执行结束后,将任务的状态,包括执行的结果发送到可重构设备的控制模块SuperBlock。2: If the task is executed on the reconfigurable device, after the task is executed, the state of the task, including the execution result, is sent to the control module SuperBlock of the reconfigurable device.
3:当SuperBlock收到任务执行结果的时候,查看任务的记录表,如果任务是由本地的通用计算机调用的,则将执行的结果通过PCI接口发送给通用计算机的监视进程,再由监视进程将结果返回给任务的调用进程。如果任务是由远程节点调用的,则将执行的结果通过网络,发送给将这个任务转发到本地节点的邻居节点的可重构设备的控制模块SuperBlock。3: When SuperBlock receives the task execution result, check the record table of the task. If the task is called by the local general-purpose computer, then send the execution result to the monitoring process of the general-purpose computer through the PCI interface, and then the monitoring process will The result is returned to the task's calling process. If the task is invoked by a remote node, the execution result will be sent through the network to the control module SuperBlock of the reconfigurable device that forwards the task to the neighbor node of the local node.
Claims (4)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100959563A CN101505319B (en) | 2009-02-26 | 2009-02-26 | Method for accelerating adaptive reconfigurable processing unit array system based on network |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009100959563A CN101505319B (en) | 2009-02-26 | 2009-02-26 | Method for accelerating adaptive reconfigurable processing unit array system based on network |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101505319A CN101505319A (en) | 2009-08-12 |
CN101505319B true CN101505319B (en) | 2011-09-28 |
Family
ID=40977383
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009100959563A Expired - Fee Related CN101505319B (en) | 2009-02-26 | 2009-02-26 | Method for accelerating adaptive reconfigurable processing unit array system based on network |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101505319B (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107229504A (en) * | 2017-05-12 | 2017-10-03 | 广州接入信息科技有限公司 | Program distribution operation method, apparatus and system |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102063410B (en) * | 2010-10-22 | 2012-05-23 | 中国科学技术大学 | Computer based on programmable hardware computing platform |
CN102081841B (en) * | 2011-01-18 | 2013-06-19 | 北京世纪高通科技有限公司 | Method and system for processing huge traffic data |
CN103677991A (en) * | 2013-12-16 | 2014-03-26 | 重庆川仪自动化股份有限公司 | Task execution method based on single chip microcomputer system framework and single chip microcomputer system framework |
CN105700956A (en) * | 2014-11-28 | 2016-06-22 | 国际商业机器公司 | Distributed job processing method and system |
CN106933212B (en) * | 2017-04-21 | 2019-12-10 | 华南理工大学 | reconfigurable industrial robot programming control method in distributed manufacturing environment |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070283128A1 (en) * | 2006-06-06 | 2007-12-06 | Matsushita Electric Industrial Co., Ltd. | Asymmetric multiprocessor |
-
2009
- 2009-02-26 CN CN2009100959563A patent/CN101505319B/en not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20070283128A1 (en) * | 2006-06-06 | 2007-12-06 | Matsushita Electric Industrial Co., Ltd. | Asymmetric multiprocessor |
Non-Patent Citations (2)
Title |
---|
Kritchalach Thitikamol, Peter Keleher.Thread Migration and Load Balancing in Non-Dedicated Environments.《Parallel and Distributed Processing Symposium, 2000. IPDPS 2000. Proceedings. 14th International》.2000,全文. * |
KritchalachThitikamol Peter Keleher.Thread Migration and Load Balancing in Non-Dedicated Environments.《Parallel and Distributed Processing Symposium |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107229504A (en) * | 2017-05-12 | 2017-10-03 | 广州接入信息科技有限公司 | Program distribution operation method, apparatus and system |
Also Published As
Publication number | Publication date |
---|---|
CN101505319A (en) | 2009-08-12 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101505319B (en) | Method for accelerating adaptive reconfigurable processing unit array system based on network | |
CN103365726B (en) | A kind of method for managing resource towards GPU cluster and system | |
CN111324558A (en) | Data processing method and device, distributed data stream programming framework and related components | |
US9563474B2 (en) | Methods for managing threads within an application and devices thereof | |
CN105683939A (en) | A computing platform, a reconfigurable hardware device and a method for simultaneously executing processes on dynamically reconfigurable hardware device, such as an FPGA, as well as instruction set processors, such as a CPU, and a related computer readable medium. | |
CN107291550B (en) | A Spark platform resource dynamic allocation method and system for iterative applications | |
WO2019214128A1 (en) | Dynamic reconfigurable intelligent computing cluster and configuration method therefor | |
CN110532072A (en) | Distributive type data processing method and system based on Mach | |
CN101833439B (en) | Parallel computing hardware structure based on separation and combination thought | |
CN104615500A (en) | Method for dynamically distributing computing resources of server | |
CN105930598A (en) | Hierarchical information processing method and circuit based on controller pipeline architecture | |
CN104777890A (en) | Power consumption management system of multi-path server | |
CN101976204B (en) | Service-oriented heterogeneous multi-core computing platform and task scheduling method used by same | |
CN113609068A (en) | Cloud service architecture based on hybrid heterogeneous processor | |
CN113723931B (en) | Workflow modeling method suitable for multi-scale high-flux material calculation | |
Kaushik et al. | Run-time computation and communication aware mapping heuristic for NoC-based heterogeneous MPSoC platforms | |
CN110401939A (en) | A kind of low-power consumption bluetooth controller link layer device | |
CN1979423A (en) | Multi-processor load distribution-regulation method | |
CN102819458B (en) | A kind of processing method and system of distributed operation order | |
CN105653347A (en) | Server, resource management method and virtual machine manager | |
Kosciuszkiewicz et al. | Run-time management of reconfigurable hardware tasks using embedded linux | |
CN103488527A (en) | PHP (hypertext preprocessor) API (application programing interface) calling method, related equipment and system | |
Ferger et al. | Hardware/software virtualization for the reconfigurable multicore platform | |
CN107818071B (en) | An FPGA-based hardware thread implementation method | |
CN107786587B (en) | Method for adjusting application resources and cloud controller |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20110928 Termination date: 20120226 |