CN108984235A - 一种数据处理的方法以及相关装置 - Google Patents
一种数据处理的方法以及相关装置 Download PDFInfo
- Publication number
- CN108984235A CN108984235A CN201810699708.9A CN201810699708A CN108984235A CN 108984235 A CN108984235 A CN 108984235A CN 201810699708 A CN201810699708 A CN 201810699708A CN 108984235 A CN108984235 A CN 108984235A
- Authority
- CN
- China
- Prior art keywords
- data
- computing module
- instruction
- control module
- sub
- 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.)
- Pending
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/448—Execution paradigms, e.g. implementations of programming paradigms
- G06F9/4482—Procedural
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5011—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals
- G06F9/5016—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resources being hardware resources other than CPUs, Servers and Terminals the resource being the memory
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Advance Control (AREA)
Abstract
本发明实施例公开了一种数据处理的方法,包括:数据处理装置中的控制模块向计算模块发送第一获取指令;数据处理装置中的控制模块接收计算模块发送的计算完成指令;数据处理装置中的控制模块向计算模块发送数据输出指令。本发明实施例还公开了一种数据处理装置。本发明实施例提供了一种适用于HD架构的数据处理方法,提升了数据处理的方法的并行运算程度,提升了数据处理的方法在HD架构下数据处理的效率。
Description
技术领域
本发明实施例涉及软件领域,尤其涉及一种数据处理的方法以及相关装置。
背景技术
现如今,基于中央处理器(central processing unit,CPU)和现场可编程门阵列(field-programmable gate array,FPGA)的异构计算装置的应用(heterogeneousdevice,HD)是一种新颖前沿的技术。开放运算语言(open computing language,OpenCL),是一种专门针对异构计算装置进行并行化运算所设计的高层次程序语言,可大大提升研发效率,缩短产品研发周期。
CPU是一种执行线性计算操作的硬件,在CPU上主要利用串行算法处理数据,而FPGA一种高性能、低功耗的可编程芯片,具有强大的并行计算能力,可以根据用户定制来做针对性的算法设计。FPGA不采用指令和软件,是软硬件合一的器件。对FPGA进行编程可以使用OpenCL,OpenCL描述的逻辑可以直接被编译为晶体管电路的组合。所以FPGA实际上直接用晶体管电路实现用户的算法,没有通过指令系统的翻译。
因此在CPU和FPGA的HD中,基于CPU串行算法而设计的数据处理方法在FPGA上运行时,存在运行效率低下的问题。
发明内容
本发明实施例提供了一种数据处理的方法以及相关装置,实现了一种并行度高的数据处理的方法,提升了数据处理的方法在HD架构下数据处理的效率。
有鉴于此,本发明的第一方面提供了一种数据处理的方法,包括:
所述数据处理装置中的所述控制模块向所述计算模块发送第一获取指令,以使得所述计算模块根据所述第一获取指令获取第一数据,并根据所述第一数据生成第二数据;
所述数据处理装置中的所述控制模块接收所述计算模块发送的计算完成指令,所述计算完成指令为所述计算模块生成所述第二数据后得到的指令;
所述数据处理装置中的所述控制模块向所述计算模块发送数据输出指令,以使得所述计算模块根据所述数据输出指令输出所述第二数据。
结合本发明实施例的第一方面,在第一方面的第一种可能的实现方式中,所述数据处理装置中的所述控制模块向所述计算模块发送第一获取指令之后,包括:
所述数据处理装置中的所述控制模块向所述计算模块发送第二获取指令,以使得所述计算模块根据所述第二获取指令向所述控制型任务模块发送所述第一数据;
所述数据处理装置中的所述控制模块根据获取到的所述第一数据生成第三数据;
所述数据处理装置中的所述控制模块向所述计算模块发送所述第三数据,以使得所述计算模块根据所述第三数据完成数据处理操作并生成第四数据。
结合本发明实施例的第一方面,本发明实施例的第一方面的第二种可能的实现方式中,所述数据处理装置中的所述控制模块向所述计算模块发送第一获取指令,以使得所述计算模块根据所述第一获取指令获取第一数据,并根据所述第一数据生成第二数据,包括:
所述数据处理装置中的所述控制模块向所述计算模块发送所述第一获取指令,以使得所述计算模块根据所述第一获取指令从预先储存的目标数据中获取所述第一数据并根据所述第一数据生成所述第二数据,所述目标数据为经过数据预处理后得到的数据。
结合本发明实施例的第一方面的第二种可能的实现方式,本发明实施例的第一方面的第三种可能的实现方式中,所述数据处理装置中的所述控制模块向所述计算模块发送数据输出指令,以使得所述计算模块根据所述数据输出指令输出所述第二数据,包括:
所述数据处理装置中的所述控制模块向所述计算模块发送数据输出指令,以使得所述计算模块根据所述数据输出指令对所述第二数据进行数据处理,以使处理后的所述第二数据为可存储数据。
结合本发明实施例的第一方面的第二种可能的实现方法至第一方面的第三种可能的实现方式中的任一种实现方式,本发明实施例的第一方面的第四种可能的实现方式中,当所述数据处理装置包括多个数据通道时,所述控制模块包括第一子控制模块以及第二子控制模块,所述计算模块包括第一子计算模块以及第二子计算模块;
所述数据处理装置中的所述控制模块向所述计算模块发送第一获取指令,以使得所述计算模块根据所述第一获取指令获取第一数据,并根据所述第一数据生成第二数据,包括:
所述数据处理装置中的所述第一子控制模块通过第一数据通道接收第一数据分发指令,其中,所述第一数据分发指令用于确定待分配的数据量;
所述数据处理装置中的所述第一子控制模块向所述第一子计算模块发送第一获取指令,以使得所述第一子计算模块根据所述第一获取指令获取第一子数据,并根据所述第一子数据生成第二子数据;
所述数据处理装置中的所述第二子控制模块通过第二数据通道接收第二数据分发指令,其中,所述第二数据分发指令用于确定待分配的数据量;
所述数据处理装置中的所述第二子控制模块向所述第二子计算模块发送所述第一获取指令,以使得所述第二子计算模块根据所述第一获取指令获取第三子数据,并根据所述第三子数据生成第四子数据;
所述数据处理装置中的所述控制模块接收所述计算模块发送的计算完成指令,所述计算完成指令为所述计算模块生成所述第二数据后得到的指令,包括:
在所述第一数据通道中,所述数据处理装置中的所述第一子控制模块接收所述第一子计算模块发送的计算完成指令,所述计算完成指令为所述第一子计算模块生成所述第二子数据后得到的指令;
在所述第二数据通道中,所述数据处理装置中的所述第二子控制模块接收所述第二子计算模块发送的计算完成指令,所述计算完成指令为所述第二子计算模块生成所述第四子数据后得到的指令;
所述数据处理装置中的所述控制模块向所述计算模块发送数据输出指令,以使得所述计算模块根据所述数据输出指令输出所述第二数据,包括:
在所述第一数据通道中,所述数据处理装置中的所述第一子控制模块向所述第一子计算模块发送数据输出指令,以使得所述第一子计算模块根据所述数据输出指令输出所述第二子数据;
在所述第二数据通道中,所述数据处理装置中的所述第二子控制模块向所述第二子计算模块发送数据输出指令,以使得所述第二子计算模块根据所述数据输出指令输出所述第四子数据;
所述数据处理装置根据所述第二子数据以及所述第四子数据,生成合成数据,并输出所述合成数据。
本发明第二方面提供了一种数据处理装置,所述数据处理装置包括控制模块以及计算模块,所述数据处理装置还包括至少一个数据通道中,所述数据处理装置包括:
所述控制模块,用于向所述计算模块发送第一获取指令;
所述计算模块,用于根据所述控制模块发送的所述第一获取指令获取第一数据,并根据所述第一数据生成第二数据;
所述计算模块,还用于向所述控制模块发送计算完成指令,所述计算完成指令为所述计算模块生成所述第二数据后得到的指令;
所述控制模块,还用于向所述计算模块发送数据输出指令;
所述计算模块,还用于根据所述数据输出指令输出所述第二数据。
结合本发明实施例的第二方面,在第二方面的第一种可能的实施例中,提供了数据处理装置,包括:
所述控制模块,还用于向所述计算模块发送第二获取指令;
所述计算模块,还用于根据所述第二获取指令向所述控制型任务模块发送所述第一数据;
所述控制模块,还用于根据获取到的所述第一数据生成第三数据;
所述控制模块,还用于向所述计算模块发送所述第三数据;
所述计算模块,还用于根据所述第三数据完成数据处理操作并生成第四数据。
结合本发明实施例的第二方面,在第二方面的第二种可能的实施例中,提供了数据处理装置,包括:
所述控制模块,具体用于向所述计算模块发送所述第一获取指令;
所述计算模块,还用于根据所述第一获取指令从预先储存的目标数据中获取所述第一数据并根据所述第一数据生成所述第二数据,所述目标数据为经过数据预处理后得到的数据。
结合本发明实施例的第二方面的第二种可能的实施例,在第二方面的第三种可能的实施例中,提供了数据处理装置,包括:
所述控制模块,具体用于向所述计算模块发送数据输出指令;
所述计算模块,还用于根据所述数据输出指令对所述第二数据进行数据处理,以使处理后的所述第二数据为可存储数据。
结合本发明实施例的第二方面的第二种可能的实现方式至第二方面的第三种可能的实现方式中的任一种实现方式,本发明实施例的第二方面的第四种可能的实现方式中,提供了一种数据处理装置,当所述数据处理装置包括多个数据通道时,所述控制模块还包括第一子控制模块以及第二子控制模块,所述计算模块还包括第一子计算模块以及第二子计算模块;
所述控制模块,还用于向所述计算模块发送第一获取指令;
所述计算模块,还用于根据所述第一获取指令获取第一数据,并根据所述第一数据生成第二数据,包括:
所述第一子控制模块,具体用于通过第一数据通道接收第一数据分发指令,其中,所述第一数据分发指令用于确定待分配的数据量;
所述第一子控制模块,还用于向所述第一子计算模块发送第一获取指令;
所述第一子计算模块,具体用于根据所述第一获取指令获取第一子数据,并根据所述第一子数据生成第二子数据;
所述第二子控制模块,具体用于通过第二数据通道接收第二数据分发指令,其中,所述第二数据分发指令用于确定待分配的数据量;
所述第二子控制模块,还用于向所述第二子计算模块发送所述第一获取指令;
所述第二子计算模块,具体用于根据所述第一获取指令获取第三子数据,并根据所述第三子数据生成第四子数据;
所述控制模块,还用于接收所述计算模块发送的计算完成指令,所述计算完成指令为所述计算模块生成所述第二数据后得到的指令,包括:
在所述第一数据通道中,所述第一子控制模块,还用于接收所述第一子计算模块发送的计算完成指令,所述计算完成指令为所述第一子计算模块生成所述第二子数据后得到的指令;
在所述第二数据通道中,所述第二子控制模块,还用于接收所述第二子计算模块发送的计算完成指令,所述计算完成指令为所述第二子计算模块生成所述第四子数据后得到的指令;
所述控制模块,还用于向所述计算模块发送数据输出指令,以使得所述计算模块根据所述数据输出指令输出所述第二数据,包括:
在所述第一数据通道中,所述第一子控制模块,还用于向所述第一子计算模块发送数据输出指令;
所述第一子计算模块,还用于根据所述数据输出指令输出所述第二子数据;
在所述第二数据通道中,所述第二子控制模块,还用于向所述第二子计算模块发送数据输出指令;
所述第二子计算模块,还用于根据所述数据输出指令输出所述第四子数据;
所述合成模块,用于根据所述第二子数据以及所述第四子数据,生成合成数据,并输出所述合成数据。
从以上技术方案可以看出,本发明实施例具有以下优点:
本发明实施例中,提供了一种数据处理方法,数据处理装置中的控制模块向计算模块发送第一获取指令,以使得计算模块根据第一获取指令获取第一数据,并根据第一数据生成第二数据;数据处理装置中的控制模块接收计算模块发送的计算完成指令,计算完成指令为计算模块生成第二数据后得到的指令;数据处理装置中的控制模块向计算模块发送数据输出指令,以使得计算模块根据数据输出指令输出第二数据。通过上述方式,提供了一种适用于HD架构的数据处理方法,提升了数据处理的方法的并行运算程度,提升了数据处理的方法在HD架构下数据处理的效率。
附图说明
图1为本发明实施例中数据处理的方法的任务划分示意图;
图2为本发明实施例中数据处理的方法的OpenCL的内存模型示意图;
图3为本发明实施例中数据处理的方法的一个实施例示意图;
图4为本发明实施例中数据处理的方法的另一个实施例示意图;
图5为本发明实施例中数据处理的方法的另一个实施例示意图;
图6为本发明实施例中数据处理的方法的另一个实施例示意图;
图7为本发明实施例中数据处理装置的一个实施例示意图;
图8为本发明实施例中数据处理装置的另一个实施例示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”、“第三”、“第四”等(如果存在)是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
本发明实施例提供了一种数据处理的方法以及相关装置,实现了一种并行度高的数据处理的方法,提升了数据处理的方法在HD架构下数据处理的效率。
应理解,本发明主要应用于CPU和FPGA的异构计算装置的应用(heterogeneousdevice,HD),使用的是OpenCL(open computing language,开放运算语言)进行编程。为了便于理解,请查阅图1,图1为本发明实施例中数据处理的方法的任务划分示意图,本发明实施例将基于算法实现的数据处理的方法依据任务属性划分成两个模块,分别是计算模块以及控制模块,其中计算模块属于算法中以计算为主的部分,但是也存在有逻辑控制的部分;控制模块属于算法中以逻辑控制为主的部分,但是也存在有数据计算的部分,因此两个模块具有从外部接收数据以及输出数据的能力,此处不做限定。
如图1所示,控制模块与计算模块之间存在交互,交互过程如下所述:当运行本发明的HD通电时,两个模块启动,控制模块向计算模块下发获取待处理数据的指令,计算模块根据控制模块发送的获取待处理数据的指令获取待处理数据,当获取待处理数据后,进行数据处理操作,当数据处理完成后,计算模块向控制模块发送数据处理完成的指令,控制模块获取计算模块发送的数据处理完成的指令后,向计算模块发送新的获取待处理数据的指令,用以指示计算模块进行下一次的数据处理操作。
可以理解的是,控制模块与计算模块之间的交互还存在以下过程:当运行本发明的HD通电时,两个模块启动,控制模块向计算模块下发获取待处理数据的指令,计算模块根据控制模块发送的获取待处理数据的指令获取第一待处理数据,当获取第一待处理数据后,计算模块将该第一待处理数据发送至控制模块,控制模块接收第一待处理数据后,对数据进行处理生成第二待处理数据并发送至计算模块,控制模块对第一待处理数据进行的处理包括数据的重排、筛选或者计算,此处不作限定,计算模块根据接收到的第二待处理数据进行数据处理操作,当数据处理完成后,计算模块向控制模块发送数据处理完成的指令,控制模块获取计算模块发送的数据处理完成的指令后,向计算模块发送新的获取待处理数据的指令,用以指示计算模块进行下一次的数据处理操作。
由于本发明是使用OpenCL进行编程的,因此下面结合图2对本发明提出的数据处理的方法进行说明,图2为本发明实施例中数据处理的方法的OpenCL的内存模型示意图。在OpenCL中定义了一种多级内存模型,涉及从仅单独计算单元可见的私有内存到设备上的所有计算单元均可见的全局内存这一范围内的各种内存。不同内存空间可重叠在一起,具体取决于实际的内存子系统。如图2所示,本发明中需要使用OpenCL中定义的三种内存,分别是:全局内存(global memory)是一种可供设备上的所有计算单元使用的内存,与全体计算单元间存在数据通信、局部内存(local memory)是供工作组中的工作项使用的内存,与单一独立的计算单元间存在数据通信、以及私有内存(private memory)是仅供单一计算单元使用的内存,位于计算单元内部与单一处理元件之间存在数据通信。对这三种内存进行比较,全局内存容量最大,速度最慢;局部内存容量居中,速度居中;私有内存容量最小,速度最慢。由于本发明应用于基于CPU和FPGA的HD,因此在FPGA上,全局内存是通过片外DDR实现,局部内存是通过片上RAM实现,私有内存是通过片上寄存器实现。本发明中计算模块从全局内存中获取待处理数据后,可以将该待处理数据缓存至局部内存或者私有内存中,当计算模块对待处理数据执行完数据处理操作后,需要输出数据时,可以将输出的数据缓存至局部内存或者私有内存中。
需要说明的是,图2所示的计算单元N、局部内存N、私有内存M以及处理元件M,其中的N以及M为大于1的整数,用以表示OpenCL的内存模型中存在大于1的任意数量的计算单元、局部内存、私有内存以及处理元件,其中计算单元的数量与局部内存的数量一一对应,私有内存的数量与处理元件的数量一一对应。
下面对本发明中数据处理的方法进行介绍,请参阅图3,本发明实施例中数据处理的方法的一个实施例示意图包括:
301、控制模块向计算模块发送第一获取指令,以使得计算模块根据第一获取指令获取第一数据,并根据第一数据生成第二数据;
本实施例中,部署于HD上的数据处理装置中的控制模块向计算模块发送第一获取指令,该第一获取指令用于指示计算模块获取数据进行数据处理操作,计算模块接收第一获取指令后,获取第一数据,并对第一数据进行处理,该数据命名为第一数据,将处理后生成的数据命名为第二数据。
其中,计算模块数据处理的过程包括数据转换、数据分组、数据组织、数据计算或者数据排序等,此处不作限定。
302、控制模块接收计算模块发送的计算完成指令,计算完成指令为计算模块生成第二数据后得到的指令;
本实施例中,当计算模块根据第一数据生成第二数据后,计算模块向控制模块发送计算完成指令,该计算完成指令用以表示计算模块对第一数据处理完成。
303、控制模块向计算模块发送数据输出指令,以使得计算模块根据数据输出指令输出第二数据;
本实施例中,当控制模块接收控制模块发送的计算完成指令后,控制模块向计算模块发送数据输出指令,该数据输出指令用以指示计算模块将数据处理后生成的第二数据进行输出操作、
本发明实施例中,提供了一种数据处理的方法,首先控制模块向计算模块发送第一获取指令,以使得计算模块根据第一获取指令获取第一数据,并根据第一数据生成第二数据;其次控制模块接收计算模块发送的计算完成指令,计算完成指令为计算模块生成第二数据后得到的指令;最后数据处理装置中的控制模块向计算模块发送数据输出指令,以使得计算模块根据数据输出指令输出第二数据;通过上述的方式,将基于算法实现的数据处理的方法根据任务属性的不同区分成计算模块以及控制模块,并描述了两个模块之间交互的过程。提供了一种适用于HD架构的数据处理的方法,提升了数据处理的方法在HD架构下数据处理的效率。
可选地,在上述图3对应的实施例的基础上,本发明实施例提供的数据处理的方法的第二个实施例中,控制模块向计算模块发送第一获取指令之后,还可以包括:
控制模块向计算模块发送第二获取指令,以使得计算模块根据第二获取指令向控制型任务模块发送第一数据;
控制模块根据获取到的第一数据生成第三数据;
控制模块向计算模块发送第三数据,以使得计算模块根据第三数据完成数据处理操作并生成第四数据。
本实施例中,控制模块向计算模块发送第一获取指令之后,控制模块向计算模块发送第二获取指令,第二获取指令用于指示计算模块将根据第一获取指令获取的第一数据发送至控制模块中。控制模块接收到计算模块发送的第一数据后,对第一数据进行数据处理,并将生成的数据命名为第三数据。在控制模块生成第三数据后,控制模块将第三数据发送至计算模块,计算模块根据第三数据进行数据处理操作,将处理后生成的数据命名为第四数据。
本发明实施例中,增加了在控制模块向计算模块发送第一获取指令之后,控制模块向计算模块发送第二获取指令,以使得计算模块根据第二获取指令向控制型任务模块发送第一数据;控制模块根据获取到的第一数据生成第三数据;控制模块向计算模块发送第三数据,以使得计算模块根据第三数据完成数据处理操作并生成第四数据。通过上述方式,控制模块可以对计算模块获取的第一数据进行预处理。这样的话,提升了计算模块可计算数据的范围,并且通过控制模块的数据处理,提升了整体数据处理的方法的效率。
可选地,在上述图3对应的本发明实施例提供的第一个实施例的基础上,本发明实施例提供的数据处理的方法的第三个实施例中,控制模块向计算模块发送第一获取指令,以使得计算模块根据第一获取指令获取第一数据,并根据第一数据生成第二数据,可以包括:
控制模块向计算模块发送第一获取指令,以使得计算模块根据第一获取指令从预先储存的目标数据中获取第一数据并根据第一数据生成第二数据,目标数据为经过数据预处理后得到的数据。
具体的,请参阅图4,图4为本发明实施例中数据处理的方法的另一个实施例示意图。
本实施例中,控制模块向计算模块发送第一获取指令,计算模块接收第一获取指令后,根据第一获取指令从预先存储的目标数据中获取第一数据,该预先存储的目标数据既可以是根据控制模块的指令预先进行存储的数据,也可以是根据计算模块本身数据处理的需求而进行预先存储的数据,此处不作限定。该预先存储的目标数据的存储位置称为数据准备。
本申请实施例中,增加了在计算模块接收控制模块发送的第一获取指令后,可以从数据准备区域获取预先存储的目标数据。通过上述方式,在计算模块获取第一数据进行数据处理之前,数据处理装置会预先将所需的数据存储至数据准备区域。这样的话,方便计算模块获取第一数据,减少了查询全局内存时产生的时延,提升了数据处理的效率。
可选地,在上述图4对应的实施例的基础上,本发明实施例提供的数据处理的方法第四个实施例中,控制模块向计算模块发送数据输出指令,以使得计算模块根据数据输出指令输出第二数据,可以包括:
控制模块向计算模块发送数据输出指令,以使得计算模块根据数据输出指令对第二数据进行数据处理,以使处理后的第二数据为可存储数据。
具体的,请参阅图5,图5为本发明实施例中数据处理的方法的另一个实施例示意图。
本实施例中,当控制模块通过接收计算模块发送的计算完成指令,判断计算模块对第一数据进行数据处理完成并生成第二数据后,控制模块通过向计算模块发送数据输出指令,指示计算模块对第二数据执行输出操作,计算模块接收数据输出指令后,对第二数据进行数据处理,使得处理后的第二数据为可存储至存储器的数据。对第二数据进行数据处理,使得处理后的第二数据为可存储至存储器的数据的区域,称为数据存储。
其中,当控制模块判断此次计算模块生成的第二数据为下一次计算模块进行数据处理时所需要的源数据时,控制模块可以通过数据输出指令,指示计算模块向控制模块发送第二数据,控制模块接收第二数据后对第二数据进行数据处理并将处理后的第二数据发送至计算模块,该数据处理过程使得经控制模块处理后的第二数据能够用于下一次计算模块进行的数据处理操作。
本发明实施例中,控制模块向计算模块发送数据输出指令,以使得计算模块根据数据输出指令对第二数据进行数据处理,以使处理后的第二数据为可存储数据。通过计算模块对生成的第二数据进行数据处理,使得处理后的第二数据为可存储数据,提升了方案的可行性。
可选地,在上述图4或图5对应的本发明实施例提供的数据处理的方法第三个或第四个实施例中任一项的基础上,本发明实施例提供的数据处理的方法的第五个实施例中,数据处理装置包括多个数据通道时,控制模块包括第一子控制模块以及第二子控制模块,计算模块包括第一子计算模块7021以及第二子计算模块7022,可以包括:
数据处理装置中的控制模块向计算模块发送第一获取指令,以使得计算模块根据第一获取指令获取第一数据,并根据第一数据生成第二数据:
数据处理装置中的第一子控制模块通过第一数据通道接收第一数据分发指令,其中,第一数据分发指令用于确定待分配的数据量;
数据处理装置中的第一子控制模块向第一子计算模块7021发送第一获取指令,以使得第一子计算模块7021根据第一获取指令获取第一子数据,并根据第一子数据生成第二子数据;
数据处理装置中的第二子控制模块通过第二数据通道接收第二数据分发指令,其中,第二数据分发指令用于确定待分配的数据量;
数据处理装置中的第二子控制模块向第二子计算模块7022发送第一获取指令,以使得第二子计算模块7022根据第一获取指令获取第三子数据,并根据第三子数据生成第四子数据;
数据处理装置中的控制模块接收计算模块发送的计算完成指令,计算完成指令为计算模块生成第二数据后得到的指令,包括:
在第一数据通道中,数据处理装置中的第一子控制模块接收第一子计算模块7021发送的计算完成指令,计算完成指令为第一子计算模块7021生成第二子数据后得到的指令;
在第二数据通道中,数据处理装置中的第二子控制模块接收第二子计算模块7022发送的计算完成指令,计算完成指令为第二子计算模块7022生成第四子数据后得到的指令;
数据处理装置中的控制模块向计算模块发送数据输出指令,以使得计算模块根据数据输出指令输出第二数据,包括:
在第一数据通道中,数据处理装置中的第一子控制模块向第一子计算模块7021发送数据输出指令,以使得第一子计算模块7021根据数据输出指令输出第二子数据;
在第二数据通道中,数据处理装置中的第二子控制模块向第二子计算模块7022发送数据输出指令,以使得第二子计算模块7022根据数据输出指令输出第四子数据;
数据处理装置根据第二子数据以及第四子数据,生成合成数据,并输出合成数据。
具体的,请参阅图6,图6为本发明实施例中数据处理的方法的另一个实施例示意图。
本实施例中,提供了当数据处理装置包括多个数据通道时,数据处理装置对数据处理的流程。应理解,本实施例中除第一数据通道以及第二数据通道以外,还可以存在多个不同的数据通道,此处不作限定。数据处理装置根据实际任务需求,向不同的数据通道中的控制子模块发送不同的数据分发指令,使得不同的控制子模块根据接收到的数据分发指令制定不同的获取指令,对应的同一数据通道中的子计算模块根据接收到的获取指令获取子数据,该子数据用于子计算模块中的数据处理操作。当不同的子计算模块对获取到的子数据进行数据处理,生成处理后的子数据之后,不同的子计算模块根据对应的数据通道中的控制子模块发送的数据输出指令输出处理后的子数据。数据处理装置根据这些处理后的子数据,生成合成数据,并对合成数据进行数据处理,使得处理后的合成数据为可存储的合成数据。
本发明实施例中,提供了一种当数据处理装置存在多个数据通道时,数据处理的方法,提升了数据处理的方法的并行运算程度,提升了数据处理的方法在HD架构下数据处理的效率。
下面对本发明中的数据处理装置进行详细描述,请参阅图7,图7为本发明实施例中数据处理装置的一个实施例示意图,本发明实施例提供的数据处理装置70的第一个实施例中,数据处理装置还包括至少一个数据通道,数据处理装置70包括:
控制模块701,用于向计算模块702发送第一获取指令;
计算模块702,用于根据控制模块701发送的第一获取指令获取第一数据,并根据第一数据生成第二数据;
计算模块702,还用于向控制模块701发送计算完成指令,计算完成指令为计算模块702生成第二数据后得到的指令;
控制模块701,还用于向计算模块702发送数据输出指令;
计算模块702,还用于根据数据输出指令输出第二数据。
本实施例中,控制模块701向计算模块702发送第一获取指令;计算模块702根据控制模块701发送的第一获取指令获取第一数据,并根据第一数据生成第二数据;计算模块702向控制模块701发送计算完成指令,计算完成指令为计算模块702生成第二数据后得到的指令;控制模块701向计算模块702发送数据输出指令;计算模块702根据数据输出指令输出第二数据。
本发明实施例中,提供了一种数据处理装置,首先控制模块向计算模块发送第一获取指令,以使得计算模块根据第一获取指令获取第一数据,并根据第一数据生成第二数据;其次控制模块接收计算模块发送的计算完成指令,计算完成指令为计算模块生成第二数据后得到的指令;最后数据处理装置中的控制模块向计算模块发送数据输出指令,以使得计算模块根据数据输出指令输出第二数据;通过上述的方式,将基于算法实现的数据处理的方法根据任务属性的不同区分成计算模块以及控制模块,并描述了两个模块之间交互的过程。提供了一种适用于HD架构的数据处理的方法,提升了数据处理的方法在HD架构下数据处理的效率。
可选地,在上述图7对应的实施例的基础上,本发明实施例提供的数据处理装置70的第二个实施例中,数据处理装置70包括:
控制模块701,还用于向计算模块702发送第二获取指令;
计算模块702,还用于根据第二获取指令向控制型任务模块发送第一数据;
控制模块701,还用于根据获取到的第一数据生成第三数据;
控制模块701,还用于向计算模块702发送第三数据;
计算模块702,还用于根据第三数据完成数据处理操作并生成第四数据。
其次,本发明实施例中,增加了在控制模块向计算模块发送第一获取指令之后,控制模块向计算模块发送第二获取指令,以使得计算模块根据第二获取指令向控制型任务模块发送第一数据;控制模块根据获取到的第一数据生成第三数据;控制模块向计算模块发送第三数据,以使得计算模块根据第三数据完成数据处理操作并生成第四数据。通过上述方式,控制模块可以对计算模块获取的第一数据进行预处理。这样的话,提升了计算模块可计算数据的范围,并且通过控制模块的数据处理,提升了整体数据处理的方法的效率。
可选地,在上述图7对应的实施例的基础上,本发明实施例提供的数据处理装置70的第三个实施例中,数据处理装置70包括:
控制模块701,具体用于向计算模块702发送第一获取指令;
计算模块702,还用于根据第一获取指令从预先储存的目标数据中获取第一数据并根据第一数据生成第二数据,目标数据为经过数据预处理后得到的数据。
再次,本申请实施例中,增加了在计算模块接收控制模块发送的第一获取指令后,可以从数据准备区域获取预先存储的目标数据。通过上述方式,在计算模块获取第一数据进行数据处理之前,数据处理装置会预先将所需的数据存储至数据准备区域。这样的话,方便计算模块获取第一数据,减少了查询全局内存时产生的时延,提升了数据处理的效率。
可选地,在上述图7对应的数据处理装置70的第三个实施例的基础上,本发明实施例提供的数据处理装置70的第四个实施例中,数据处理装置70包括:
控制模块701,具体用于向计算模块702发送数据输出指令;
计算模块702,还用于根据数据输出指令对第二数据进行数据处理,以使处理后的第二数据为可存储数据。
本发明实施例中,控制模块向计算模块发送数据输出指令,以使得计算模块根据数据输出指令对第二数据进行数据处理,以使处理后的第二数据为可存储数据。通过计算模块对生成的第二数据进行数据处理,使得处理后的第二数据为可存储数据,提升了方案的可行性。
可选地,在上述图7对应的数据处理装置70的第三个至第四个实施例中任一项的基础上,请参阅图8,本发明实施例提供的数据处理装置70的第5个可选实施例中,当数据处理装置包括多个数据通道时,数据处理装置70中,控制模块701还包括第一子控制模块7011以及第二子控制模块7012,计算模块702还包括第一子计算模块7021以及第二子计算模块7022,还包括合成模块703;
控制模块701,还用于向计算模块702发送第一获取指令;
计算模块702,还用于根据第一获取指令获取第一数据,并根据第一数据生成第二数据:
第一子控制模块7011,具体用于通过第一数据通道接收第一数据分发指令,其中,第一数据分发指令用于确定待分配的数据量;
第一子控制模块7011,还用于向第一子计算模块7021发送第一获取指令;
第一子计算模块7021,具体用于根据第一获取指令获取第一子数据,并根据第一子数据生成第二子数据;
第二子控制模块7012,具体用于通过第二数据通道接收第二数据分发指令,其中,第二数据分发指令用于确定待分配的数据量;
第二子控制模块7012,还用于向第二子计算模块7022发送第一获取指令;
第二子计算模块7022,具体用于根据第一获取指令获取第三子数据,并根据第三子数据生成第四子数据;
控制模块701,还用于接收计算模块702发送的计算完成指令,计算完成指令为计算模块702生成第二数据后得到的指令,包括:
在第一数据通道中,第一子控制模块7011,还用于接收第一子计算模块7021发送的计算完成指令,计算完成指令为第一子计算模块7021生成第二子数据后得到的指令;
在第二数据通道中,第二子控制模块7012,还用于接收第二子计算模块7022发送的计算完成指令,计算完成指令为第二子计算模块7022生成第四子数据后得到的指令;
控制模块701,还用于向计算模块702发送数据输出指令,以使得计算模块702根据数据输出指令输出第二数据,包括:
在第一数据通道中,第一子控制模块7011,还用于向第一子计算模块7021发送数据输出指令;
第一子计算模块7021,还用于根据数据输出指令输出第二子数据;
在第二数据通道中,第二子控制模块7012,还用于向第二子计算模块7022发送数据输出指令;
第二子计算模块7022,还用于根据数据输出指令输出第四子数据;
合成模块703,用于根据第二子数据以及第四子数据,生成合成数据,并输出合成数据。
再次,本发明实施例中,提供了一种当数据处理装置存在多个数据通道时,数据处理的方法,提升了数据处理的方法的并行运算程度,提升了数据处理的方法在HD架构下数据处理的效率。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的系统,装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(read-only memory,ROM)、随机存取存储器(random access memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (10)
1.一种数据处理的方法,其特征在于,所述方法应用于数据处理装置,所述数据处理装置包括控制模块以及计算模块,所述数据处理装置还包括至少一个数据通道,所述方法包括:
所述数据处理装置中的所述控制模块向所述计算模块发送第一获取指令,以使得所述计算模块根据所述第一获取指令获取第一数据,并根据所述第一数据生成第二数据;
所述数据处理装置中的所述控制模块接收所述计算模块发送的计算完成指令,所述计算完成指令为所述计算模块生成所述第二数据后得到的指令;
所述数据处理装置中的所述控制模块向所述计算模块发送数据输出指令,以使得所述计算模块根据所述数据输出指令输出所述第二数据。
2.根据权利要求1所述的方法,其特征在于,所述数据处理装置中的所述控制模块向所述计算模块发送第一获取指令之后,所述方法还包括:
所述数据处理装置中的所述控制模块向所述计算模块发送第二获取指令,以使得所述计算模块根据所述第二获取指令向所述控制型任务模块发送所述第一数据;
所述数据处理装置中的所述控制模块根据获取到的所述第一数据生成第三数据;
所述数据处理装置中的所述控制模块向所述计算模块发送所述第三数据,以使得所述计算模块根据所述第三数据完成数据处理操作并生成第四数据。
3.根据权利要求1所述的方法,其特征在于,所述数据处理装置中的所述控制模块向所述计算模块发送第一获取指令,以使得所述计算模块根据所述第一获取指令获取第一数据,并根据所述第一数据生成第二数据,包括:
所述数据处理装置中的所述控制模块向所述计算模块发送所述第一获取指令,以使得所述计算模块根据所述第一获取指令从预先储存的目标数据中获取所述第一数据并根据所述第一数据生成所述第二数据,所述目标数据为经过数据预处理后得到的数据。
4.根据权利要求3所述的方法,其特征在于,所述数据处理装置中的所述控制模块向所述计算模块发送数据输出指令,以使得所述计算模块根据所述数据输出指令输出所述第二数据,包括:
所述数据处理装置中的所述控制模块向所述计算模块发送数据输出指令,以使得所述计算模块根据所述数据输出指令对所述第二数据进行数据处理,以使处理后的所述第二数据为可存储数据。
5.根据权利要求3或4中任一项所述的方法,其特征在于,当所述数据处理装置包括多个数据通道时,所述控制模块包括第一子控制模块以及第二子控制模块,所述计算模块包括第一子计算模块以及第二子计算模块;
所述数据处理装置中的所述控制模块向所述计算模块发送第一获取指令,以使得所述计算模块根据所述第一获取指令获取第一数据,并根据所述第一数据生成第二数据,包括:
所述数据处理装置中的所述第一子控制模块通过第一数据通道接收第一数据分发指令,其中,所述第一数据分发指令用于确定待分配的数据量;
所述数据处理装置中的所述第一子控制模块向所述第一子计算模块发送第一获取指令,以使得所述第一子计算模块根据所述第一获取指令获取第一子数据,并根据所述第一子数据生成第二子数据;
所述数据处理装置中的所述第二子控制模块通过第二数据通道接收第二数据分发指令,其中,所述第二数据分发指令用于确定待分配的数据量;
所述数据处理装置中的所述第二子控制模块向所述第二子计算模块发送所述第一获取指令,以使得所述第二子计算模块根据所述第一获取指令获取第三子数据,并根据所述第三子数据生成第四子数据;
所述数据处理装置中的所述控制模块接收所述计算模块发送的计算完成指令,所述计算完成指令为所述计算模块生成所述第二数据后得到的指令,包括:
在所述第一数据通道中,所述数据处理装置中的所述第一子控制模块接收所述第一子计算模块发送的计算完成指令,所述计算完成指令为所述第一子计算模块生成所述第二子数据后得到的指令;
在所述第二数据通道中,所述数据处理装置中的所述第二子控制模块接收所述第二子计算模块发送的计算完成指令,所述计算完成指令为所述第二子计算模块生成所述第四子数据后得到的指令;
所述数据处理装置中的所述控制模块向所述计算模块发送数据输出指令,以使得所述计算模块根据所述数据输出指令输出所述第二数据,包括:
在所述第一数据通道中,所述数据处理装置中的所述第一子控制模块向所述第一子计算模块发送数据输出指令,以使得所述第一子计算模块根据所述数据输出指令输出所述第二子数据;
在所述第二数据通道中,所述数据处理装置中的所述第二子控制模块向所述第二子计算模块发送数据输出指令,以使得所述第二子计算模块根据所述数据输出指令输出所述第四子数据;
所述数据处理装置根据所述第二子数据以及所述第四子数据,生成合成数据,并输出所述合成数据。
6.一种数据处理装置,其特征在于,所述数据处理装置包括控制模块以及计算模块,所述数据处理装置还包括至少一个数据通道中,所述数据处理装置包括:
所述控制模块,用于向所述计算模块发送第一获取指令;
所述计算模块,用于根据所述控制模块发送的所述第一获取指令获取第一数据,并根据所述第一数据生成第二数据;
所述计算模块,还用于向所述控制模块发送计算完成指令,所述计算完成指令为所述计算模块生成所述第二数据后得到的指令;
所述控制模块,还用于向所述计算模块发送数据输出指令;
所述计算模块,还用于根据所述数据输出指令输出所述第二数据。
7.根据权利要求6所述的数据处理装置,其特征在于,
所述控制模块,还用于向所述计算模块发送第二获取指令;
所述计算模块,还用于根据所述第二获取指令向所述控制型任务模块发送所述第一数据;
所述控制模块,还用于根据获取到的所述第一数据生成第三数据;
所述控制模块,还用于向所述计算模块发送所述第三数据;
所述计算模块,还用于根据所述第三数据完成数据处理操作并生成第四数据。
8.根据权利要求6所述的数据处理装置,其特征在于,
所述控制模块,具体用于向所述计算模块发送所述第一获取指令;
所述计算模块,还用于根据所述第一获取指令从预先储存的目标数据中获取所述第一数据并根据所述第一数据生成所述第二数据,所述目标数据为经过数据预处理后得到的数据。
9.根据权利要求8所述的数据处理装置,其特征在于,
所述控制模块,具体用于向所述计算模块发送数据输出指令;
所述计算模块,还用于根据所述数据输出指令对所述第二数据进行数据处理,以使处理后的所述第二数据为可存储数据。
10.根据权利要求8或9中任一项所述的数据处理装置,其特征在于,当所述数据处理装置包括多个数据通道时,所述控制模块还包括第一子控制模块以及第二子控制模块,所述计算模块还包括第一子计算模块以及第二子计算模块;
所述控制模块,还用于向所述计算模块发送第一获取指令;
所述计算模块,还用于根据所述第一获取指令获取第一数据,并根据所述第一数据生成第二数据,包括:
所述第一子控制模块,具体用于通过第一数据通道接收第一数据分发指令,其中,所述第一数据分发指令用于确定待分配的数据量;
所述第一子控制模块,还用于向所述第一子计算模块发送第一获取指令;
所述第一子计算模块,具体用于根据所述第一获取指令获取第一子数据,并根据所述第一子数据生成第二子数据;
所述第二子控制模块,具体用于通过第二数据通道接收第二数据分发指令,其中,所述第二数据分发指令用于确定待分配的数据量;
所述第二子控制模块,还用于向所述第二子计算模块发送所述第一获取指令;
所述第二子计算模块,具体用于根据所述第一获取指令获取第三子数据,并根据所述第三子数据生成第四子数据;
所述控制模块,还用于接收所述计算模块发送的计算完成指令,所述计算完成指令为所述计算模块生成所述第二数据后得到的指令,包括:
在所述第一数据通道中,所述第一子控制模块,还用于接收所述第一子计算模块发送的计算完成指令,所述计算完成指令为所述第一子计算模块生成所述第二子数据后得到的指令;
在所述第二数据通道中,所述第二子控制模块,还用于接收所述第二子计算模块发送的计算完成指令,所述计算完成指令为所述第二子计算模块生成所述第四子数据后得到的指令;
所述控制模块,还用于向所述计算模块发送数据输出指令,以使得所述计算模块根据所述数据输出指令输出所述第二数据,包括:
在所述第一数据通道中,所述第一子控制模块,还用于向所述第一子计算模块发送数据输出指令;
所述第一子计算模块,还用于根据所述数据输出指令输出所述第二子数据;
在所述第二数据通道中,所述第二子控制模块,还用于向所述第二子计算模块发送数据输出指令;
所述第二子计算模块,还用于根据所述数据输出指令输出所述第四子数据;
所述合成模块,用于根据所述第二子数据以及所述第四子数据,生成合成数据,并输出所述合成数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810699708.9A CN108984235A (zh) | 2018-06-29 | 2018-06-29 | 一种数据处理的方法以及相关装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810699708.9A CN108984235A (zh) | 2018-06-29 | 2018-06-29 | 一种数据处理的方法以及相关装置 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN108984235A true CN108984235A (zh) | 2018-12-11 |
Family
ID=64539599
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810699708.9A Pending CN108984235A (zh) | 2018-06-29 | 2018-06-29 | 一种数据处理的方法以及相关装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108984235A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112817638A (zh) * | 2019-11-18 | 2021-05-18 | 北京希姆计算科技有限公司 | 一种数据处理装置及方法 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102812797B (zh) * | 2007-12-21 | 2010-04-14 | 北京理工雷科电子信息技术有限公司 | 一种基于fpga的通用化信号处理平台 |
CN102096892A (zh) * | 2010-12-01 | 2011-06-15 | 华中科技大学 | 嵌入式实时图像处理平台装置 |
CN102508643A (zh) * | 2011-11-16 | 2012-06-20 | 刘大可 | 一种多核并行数字信号处理器及并行指令集的运行方法 |
CN102707931A (zh) * | 2012-05-09 | 2012-10-03 | 刘大可 | 一种基于并行数据通道的数字信号处理器 |
CN102929158A (zh) * | 2012-10-30 | 2013-02-13 | 北京华力创通科技股份有限公司 | 一种多核多模型并行分布式实时仿真系统 |
-
2018
- 2018-06-29 CN CN201810699708.9A patent/CN108984235A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102812797B (zh) * | 2007-12-21 | 2010-04-14 | 北京理工雷科电子信息技术有限公司 | 一种基于fpga的通用化信号处理平台 |
CN102096892A (zh) * | 2010-12-01 | 2011-06-15 | 华中科技大学 | 嵌入式实时图像处理平台装置 |
CN102508643A (zh) * | 2011-11-16 | 2012-06-20 | 刘大可 | 一种多核并行数字信号处理器及并行指令集的运行方法 |
CN102707931A (zh) * | 2012-05-09 | 2012-10-03 | 刘大可 | 一种基于并行数据通道的数字信号处理器 |
CN102929158A (zh) * | 2012-10-30 | 2013-02-13 | 北京华力创通科技股份有限公司 | 一种多核多模型并行分布式实时仿真系统 |
Non-Patent Citations (1)
Title |
---|
边育心: ""一种支持OpenCL的异构多核可重构片上系统硬件结构研究与设计"", 《中国优秀硕士学位论文全文数据库 信息科技辑》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112817638A (zh) * | 2019-11-18 | 2021-05-18 | 北京希姆计算科技有限公司 | 一种数据处理装置及方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Wang et al. | Design flow of accelerating hybrid extremely low bit-width neural network in embedded FPGA | |
Chen et al. | Cloud-DNN: An open framework for mapping DNN models to cloud FPGAs | |
US11829695B2 (en) | Method and system for logic design partitioning | |
Nakahara et al. | A deep convolutional neural network based on nested residue number system | |
Shi et al. | Optimal buffer allocation in production lines | |
CN109409510B (zh) | 神经元电路、芯片、系统及其方法、存储介质 | |
CN107273331A (zh) | 一种基于cpu+gpu+fpga架构的异构计算系统和方法 | |
AU2016203619A1 (en) | Layer-based operations scheduling to optimise memory for CNN applications | |
CN105630735A (zh) | 一种基于可重构计算阵列的协处理器 | |
CN104899182A (zh) | 一种支持可变分块的矩阵乘加速方法 | |
US11361217B2 (en) | Chip and chip-based data processing method | |
CN107766935B (zh) | 多层人造神经网络 | |
Petrica et al. | Memory-efficient dataflow inference for deep CNNs on FPGA | |
CN103853618A (zh) | 基于截止日期驱动的云系统代价最小化资源分配方法 | |
CN105534546A (zh) | 一种基于zynq系列fpga的超声成像方法 | |
KR20190054449A (ko) | 이종 클러스터 환경에서 신경망 트레이닝 가속화를 위한 연산 노드 배치 기법 | |
CN101833439B (zh) | 基于分合思想的并行计算硬件结构 | |
CN108304925A (zh) | 一种池化计算装置及方法 | |
CN107679409A (zh) | 一种数据加密的加速方法和系统 | |
CN108984235A (zh) | 一种数据处理的方法以及相关装置 | |
Li et al. | AdaPrune: An accelerator-aware pruning technique for sustainable CNN accelerators | |
CN109740725A (zh) | 神经网络模型运行方法及装置、以及存储介质 | |
Tuli et al. | Splitplace: Ai augmented splitting and placement of large-scale neural networks in mobile edge environments | |
Tsmots et al. | Designing features of hardware and software tools for intelligent processing of intensive data streams | |
Meng et al. | Dynamap: Dynamic algorithm mapping framework for low latency cnn inference |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20181211 |