CN105808345A - 数据处理方法、加速引擎、控制板和*** - Google Patents

数据处理方法、加速引擎、控制板和*** Download PDF

Info

Publication number
CN105808345A
CN105808345A CN201410852968.7A CN201410852968A CN105808345A CN 105808345 A CN105808345 A CN 105808345A CN 201410852968 A CN201410852968 A CN 201410852968A CN 105808345 A CN105808345 A CN 105808345A
Authority
CN
China
Prior art keywords
data
accelerating engine
cpu
network interface
interface card
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.)
Granted
Application number
CN201410852968.7A
Other languages
English (en)
Other versions
CN105808345B (zh
Inventor
李迪挺
刘通良
张蔚
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Huawei Technologies Co Ltd
Original Assignee
Huawei Technologies Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Huawei Technologies Co Ltd filed Critical Huawei Technologies Co Ltd
Priority to CN201410852968.7A priority Critical patent/CN105808345B/zh
Publication of CN105808345A publication Critical patent/CN105808345A/zh
Application granted granted Critical
Publication of CN105808345B publication Critical patent/CN105808345B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Multi Processors (AREA)
  • Bus Control (AREA)

Abstract

本发明实施例提供一种数据处理方法、加速引擎、控制板和***。应用于计算机存储***,所述计算机存储***包括第一控制板,其中,所述第一控制板包括加速引擎、第一内存、内部总线、第一网卡以及第一中央处理器CPU,其特征在于,所述方法包括:所述加速引擎通过所述内部总线将待存储数据同时复制到所述第一内存以及所述第一网卡;所述加速引擎向所述第一CPU发送通知消息,所述通知消息中包含处理完成状态标识以及发送完成状态标识。从而通过双播技术,将待存储数据同时发送给本地内存和远端内存进行保存,降低了时延,并且减少了数据处理过程中内存和CPU参与,进而提升了***的性能。

Description

数据处理方法、加速引擎、控制板和***
技术领域
本发明实施例涉及一种通信技术,尤其涉及一种数据处理方法、加速引擎、控制板和***。
背景技术
由于储存产品中多处使用重删算法、压缩算法、加密算法、磁盘阵列(RedundantArraysofIndependentDisks,RAID)5算法、RAID6算法以及数据完整性特征(DataIntegrityFeature,DIF)算法,因此在储存产品中通常都包含硬件加速模块,以提高数据处理的速度。
现有技术中,通过使用插在储存产品的外设部件互连标准(PeripheralComponentInterconnectExpress,PCIE)插槽上的现场可编程门阵列(Field-ProgrammableGateArray,FPGA)实现加速,参照图1,数据加速的具体实现过程为:1、控制板A中,中央处理器(CenterProcessingUnit,CPU)将原始数据复制(COPY)到内存,并启动加速引擎,2、加速引擎通过PCIE接口获取原始数据,并进行处理,3、在处理完后,加速引擎将处理后的数据再次放入内存,并通知CPU获取处理后的数据,4、CPU从内存获取处理后的数据后,将处理后的数据COPY到应用层,5、并使处理后的数据经过传输控制协议(TransmissionControlProtocol,TCP)协议栈后,COPY到网卡进行发送,并等待控制板N的网卡响应,6、控制板N的网卡接收到控制板A的网卡发送的数据后,发送响应给控制板A,从而完成控制板之间的数据传输。
上述现有技术的方案中,数据需要先在本地加速引擎的处理,再通过网络收发,导致数据处理的总时间较长;在数据处理的过程中,CPU需要与内存进行3次交互,CPU的开销及时延较大;并且CPU每次收发数据均需要经过TCP协议栈,消耗CPU的计算资源。
发明内容
本发明实施例提供一种数据处理方法、加速引擎、控制板和***,以减少数据处理的总时间,提升***性能。
第一方面,本发明实施例提供一种数据处理方法,应用于计算机存储***,所述计算机存储***包括第一控制板,其中,所述第一控制板包括加速引擎、第一内存、内部总线、第一网卡以及第一中央处理器CPU,其特征在于,所述方法包括:
所述加速引擎通过所述内部总线将待存储数据同时复制到所述第一内存以及所述第一网卡;
所述加速引擎向所述第一CPU发送通知消息,所述通知消息中包含处理完成状态标识以及发送完成状态标识。
在第一方面的第一种可能的实现方式中,所述加速引擎通过所述内部总线将所述待处理数据同时复制到所述第一内存以及所述第一网卡之前,还包括:
所述加速引擎根据预置算法对待处理数据进行处理;
所述加速引擎存储数据资源,所述数据资源包括所述待存储数据,以及根据所述预置算法处理所述待处理数据过程中所产生的中间数据。
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述计算机存储***还包括第二控制板,所述第二控制板包括第二网卡以及第二CPU;
所述加速引擎向所述第一CPU发送通知消息之后,还包括:
所述加速引擎接收所述第二CPU通过所述第二网卡发送的接收响应;所述接收响应用于表明所述第二CPU正确接收了所述第一网卡发送的所述待存储数据;
所述加速引擎将所述接收响应发送给所述第一CPU;
所述加速引擎接收所述第一CPU发送的资源释放命令;
所述加速引擎根据所述资源释放命令释放所述数据资源。
结合第一方面至第一方面的第二种任一可能的实现方式,在第一方面的第三种可能的实现方式中,所述加速引擎向所述第一CPU发送通知消息之后,还包括:
所述加速引擎启动定时器;
若所述定时器超时,所述加速引擎没有接收到所述接收响应,则所述加速引擎重新发送所述待存储数据。
结合第一方面第三种可能的实现方式,在第一方面的第四种可能的实现方式中,所述加速引擎根据预置算法对待处理数据进行处理之前,还包括:
所述加速引擎接收所述第一CPU发送的数据处理通知;所述数据处理通知是所述第一CPU在将所述待处理数据和所述预置算法放入所述第一内存后发送的;
所述加速引擎根据所述数据处理通知,从所述第一内存获取所述待处理数据以及所述预置算法。
结合第一方面至第一方面的第四种任一可能的实现方式,在第一方面的第五种可能的实现方式中,所述加速引擎通过所述内部总线将待存储数据同时复制到所述第一内存以及所述第一网卡,具体包括:
所述加速引擎使用直接数据存储DMA,通过所述内部总线将所述待存储数据同时复制到所述第一内存以及所述第一网卡。
第二方面,本发明实施例提供一种加速引擎,包括:
复制模块,用于通过内部总线将待存储数据同时复制到第一内存以及第一网卡;
发送模块,用于向第一中央处理器CPU发送通知消息,所述通知消息中包含处理完成状态标识以及发送完成状态标识。
在第二方面的第一种可能的实现方式中,所述加速引擎还包括:
处理模块,用于根据预置算法对待处理数据进行处理;
存储模块,用于存储数据资源,所述数据资源包括所述待存储数据,以及根据所述预置算法处理所述待处理数据过程中所产生的中间数据。
结合第二方面或第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述加速引擎还包括:
接收模块,用于接收第二CPU通过所述第二网卡发送的接收响应;所述接收响应用于表明所述第二CPU正确接收了所述第一网卡发送的所述待存储数据;
所述发送模块用于将所述接收响应发送给所述第一CPU;
所述接收模块用于接收所述第一CPU发送的资源释放命令;
所述加速引擎还包括释放模块,用于根据所述资源释放命令释放所述数据资源。
结合第二方面至第二方面的第二种任一可能的实现方式,在第二方面的第三种可能的实现方式中,所述加速引擎还包括:
启动模块,用于启动定时器;
若所述定时器超时,所述接收模块没有接收到所述接收响应,则所述发送模块重新发送所述待存储数据。
结合第二方面第三种可能的实现方式,在第二方面的第四种可能的实现方式中,所述接收模块还用于接收所述第一CPU发送的数据处理通知;所述数据处理通知是所述第一CPU在将所述待处理数据和所述预置算法放入所述第一内存后发送的;
加速引擎还包括获取模块,用于根据所述数据处理通知,从所述第一内存获取所述待处理数据以及所述预置算法。
结合第二方面至第二方面的第四种任一可能的实现方式,在第二方面的第五种可能的实现方式中,所述复制模块具体用于:使用直接数据存储DMA,通过所述内部总线将所述待存储数据同时复制到所述第一内存以及所述第一网卡。
第三方面,本发明实施例提供一种控制板,包括:中央处理器CPU、内存、内部总线、网卡以及加速引擎;
所述内存用于存储数据、配置参数和程序;所述数据包括待处理数据和待存储数据;
所述CPU用于执行所述内存中存储的程序;
所述内部总线用于实现所述内存、所述CPU、所述网卡和所述加速引擎之间的通信;
所述网卡用于通过远程直接数据存取RDMA传递所述待存储数据;
所述加速引擎用于执行如上第一方面任一所述的数据处理方法。
第四方面,本发明实施例提供一种控制板,包括:内存和片上***SOC;
其中,所述内存用于存储数据、配置参数和程序;所述数据包括待处理数据和待存储数据;
所述SOC包括中央处理器CPU、网卡、内部总线以及加速引擎;所述CPU用于执行所述内存中存储的程序;所述网卡用于通过远程直接数据存取RDMA传递所述待存储数据;所述内部总线用于实现所述内存、所述CPU、所述网卡和所述加速引擎之间的通信;所述加速引擎用于执行如上第一方面任一所述的数据处理方法。
第五方面,本发明实施例提供一种数据处理***,包括:至少两个如第三方面所述的控制板和/或如第四方面所述的控制板。
本发明实施例提供的数据处理方法、加速引擎、控制板和***,应用于计算机存储***,所述计算机存储***包括第一控制板,其中,所述第一控制板包括加速引擎、第一内存、内部总线、第一网卡以及第一中央处理器CPU,其特征在于,所述方法包括:所述加速引擎通过所述内部总线将待存储数据同时复制到所述第一内存以及所述第一网卡;所述加速引擎向所述第一CPU发送通知消息,所述通知消息中包含处理完成状态标识以及发送完成状态标识。从而通过双播技术,将待存储数据同时发送给本地内存和远端内存进行保存,降低了时延,并且减少了数据处理过程中内存和CPU参与,进而提升了***的性能。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明实施例的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术中数据处理的***示意图;
图2为本发明数据处理方法实施例一的流程图;
图3为本发明数据处理方法实施例二的流程图;
图4为本发明数据处理方法实施例三的流程图;
图5为本发明加速引擎实施例一的结构示意图;
图6为本发明提供的控制板实施例一的结构示意图;
图7为本发明提供的控制板实施例二的结构示意图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明实施例一部分实施例,而不是全部的实施例。基于本发明实施例中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明实施例保护的范围。
图2为本发明数据处理方法实施例一的流程图。如图2所示,本实施例提供的方法,可以应用于计算机存储***,所述计算机存储***可以包括第一控制板,其中,所述第一控制板包括加速引擎、第一内存、内部总线、第一网卡以及第一CPU,具体的,本实施例提供的数据处理方法可以包括:
步骤101、所述加速引擎通过所述内部总线将待存储数据同时复制到所述第一内存以及所述第一网卡。
具体的,所述加速引擎在将待存储数据同时复制到所述第一内存以及所述第一网卡时,可以使用直接数据存储(DirectMemoryAccess,DMA),通过所述内部总线将所述待存储数据同时复制到所述第一内存以及所述第一网卡。
需要说明的是,与现有技术不同的是,为了实现将待存储数据同时发送给本地内存和远端内存,即同时发送给第一控制板的第一内存和第二控制板的第二内存,本实施例中,所述第一网卡具备远程直接数据存取(RemoteDirectMemoryAccess,RDMA)功能,所述加速引擎可以将所述待存储数据通过双播技术同时复制到第一内存和第一网卡,由第一网卡通过RDMA功能,直接将所述待存储数据传递给所述第二网卡实现数据备份,待存储数据不再需要经过TCP协议栈传递给所述第二网卡,从而实现了待存储数据的并行化处理,减少待存储数据在内存的复制过程,减少了对CPU计算资源的消耗,降低了时延。
步骤102、所述加速引擎向所述第一CPU发送通知消息,所述通知消息中包含处理完成状态标识以及发送完成状态标识。
本步骤中,所述加速引擎在将待存储数据同时复制到所述第一内存以及所述第一网卡后,直接向所述第一CPU发送通知消息,以使所述第一CPU获知所述待存储数据已存储至第一内存,且已通过第一网卡完成远端发送,减少了数据处理过程中内存和CPU的参与,从而提升了***性能。
本实施例的技术方案,所述加速引擎通过所述内部总线将待存储数据同时复制到所述第一内存以及所述第一网卡;向所述第一CPU发送通知消息,所述通知消息中包含处理完成状态标识以及发送完成状态标识。从而通过双播技术,将待存储数据同时发送给本地内存和远端内存进行保存,降低了时延,并且减少了数据处理过程中内存和CPU参与,进而提升了***的性能。
图3为本发明数据处理方法实施例二的流程图。在上述实施例的基础上,在步骤101之前,本实施例提供的方法进一步还可以包括:
步骤201、所述加速引擎接收所述第一CPU发送的数据处理通知;所述数据处理通知是所述第一CPU在将所述待处理数据和所述预置算法放入所述第一内存后发送的。
步骤202、所述加速引擎根据所述数据处理通知,从所述第一内存获取所述待处理数据以及所述预置算法。
步骤203、所述加速引擎根据预置算法对待处理数据进行处理。
步骤204、所述加速引擎存储数据资源,所述数据资源包括所述待存储数据,以及根据所述预置算法处理所述待处理数据过程中所产生的中间数据。
本实施例的技术方案,所述加速引擎在根据获得的预置算法处理完待处理数据后,存储数据资源,并通过所述内部总线将待存储数据同时复制到所述第一内存以及所述第一网卡;向所述第一CPU发送通知消息,所述通知消息中包含处理完成状态标识以及发送完成状态标识。从而通过双播技术,将待存储数据同时发送给本地内存和远端内存进行保存,降低了时延,并且减少了数据处理过程中内存和CPU参与,进而提升了***的性能。
图4为本发明数据处理方法实施例三的流程图。如图4所示,在上述实施例的基础上,本实施例提供的数据处理方法所应用的计算机存储***还包括第二控制板,第二控制板包括第二网卡以及第二CPU,在上述步骤102之后,本实施例提供的方法进一步还可以包括:
步骤301、所述加速引擎接收所述第二CPU通过所述第二网卡发送的接收响应;所述接收响应用于表明所述第二CPU正确接收了所述第一网卡发送的所述待存储数据。
步骤302、所述加速引擎将所述接收响应发送给所述第一CPU。
步骤303、所述加速引擎接收所述第一CPU发送的资源释放命令。
步骤304、所述加速引擎根据所述资源释放命令释放所述数据资源。
需要说明的是,所述加速引擎向所述第一CPU发送通知消息后,还可以启动定时器;若所述定时器超时,所述加速引擎没有接收到所述接收响应,则重新发送所述待存储数据;可以理解的是,在所述定时器超时前,若接收到所述接收响应,则执行上述步骤302。
本实施例的技术方案,加速引擎接收所述第二CPU通过所述第二网卡发送的接收响应,并将接收响应发送给所述第一CPU,接收所述第一CPU发送的资源释放命令,根据所述资源释放命令释放所述数据资源,并且设置了超时检测功能,即在向第一CPU发送通知消息后,所述加速引擎启动定时器,在定时器超时后,若所述加速引擎还没有接收到接收响应,则可以重新发送待存储数据,由于数据的重新发送是由硬件完成的,不需要软件进行数据搬移,因此进一步减少了数据处理过程中内存和CPU参与,提升了***的性能。
图5为本发明加速引擎实施例一的结构示意图。如图5所示,本实施例提供的加速引擎10可以包括:
复制模块11,用于通过内部总线将待存储数据同时复制到第一内存以及第一网卡;
发送模块12,用于向第一中央处理器CPU发送通知消息,所述通知消息中包含处理完成状态标识以及发送完成状态标识。
其中,所述复制模块11具体用于使用DMA,通过所述内部总线将所述待存储数据同时复制到所述第一内存以及所述第一网卡;需要说明的是,所述第一网卡和所述第二网卡均具备RDMA功能。
进一步的,所述加速引擎10还可以包括处理模块13,用于根据预置算法对待处理数据进行处理;存储模块14,用于存储数据资源,所述数据资源包括所述待存储数据,以及根据所述预置算法处理所述待处理数据过程中所产生的中间数据。
接收模块15,用于接收所述第二CPU通过所述第二网卡发送的接收响应;所述接收响应用于表明所述第二CPU正确接收了所述第一网卡发送的所述待存储数据;所述发送模块12用于将所述接收响应发送给所述第一CPU;所述接收模块15用于接收所述第一CPU发送的资源释放命令;释放模块16,用于根据所述资源释放命令释放数据资源。
可选的,所述加速引擎10还可以包括:启动模块,用于启动定时器;若所述定时器超时,所述接收模块15没有接收到所述接收响应,则所述发送模块12重新发送所述待存储数据。
所述接收模块15还可以用于接收所述第一CPU发送的数据处理通知;所述数据处理通知是所述第一CPU在将所述待处理数据和所述预置算法放入所述第一内存后发送的;所述加速引擎10还可以包括获取模块,用于根据所述数据处理通知,从所述第一内存获取所述待处理数据以及所述预置算法。
本实施例的加速引擎,可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图6为本发明提供的控制板实施例一的结构示意图。如图6所示,本实施例提供的控制板20具体可以包括:CPU21、内存22、内部总线23、网卡24以及加速引擎25;
所述内存22用于存储数据、配置参数和程序;所述数据包括待处理数据和待存储数据;
所述CPU21用于执行所述内存22中存储的程序;
所述内部总线23用于实现所述内存22、所述CPU21、所述网卡24和所述加速引擎25之间的通信;
所述网卡24用于通过RDMA传递所述待存储数据;
所述加速引擎25用于执行如上述图2-图4任一所示实施例提供的数据处理方法。
本实施例的控制板,可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
图7为本发明提供的控制板实施例二的结构示意图。如图7所示,本实施例提供的控制板30具体可以包括:内存31和片上***SOC32;
其中,所述内存31用于存储数据、配置参数和程序;所述数据包括待处理数据和待存储数据;
所述SOC32包括中央处理器CPU321、网卡322、内部总线324以及加速引擎323;所述CPU321用于执行所述内存31中存储的程序;所述网卡322用于通过RDMA传递所述待存储数据;所述内部总线324用于实现所述内存31、所述CPU321、所述网卡322和所述加速引擎323之间的通信;所述加速引擎323用于执行如上述图2-图4任一所示实施例提供的数据处理方法。
本实施例的控制板,可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
本实施例提供一种数据处理***。本实施例提供的***具体可以包括至少两个如图6所示的控制板20和/或如图7所示的控制板30。
本实施例的数据处理***,可用于执行上述方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在本发明所提供的几个实施例中,应该理解到,所揭露的装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个***,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
上述以软件功能单元的形式实现的集成的单元,可以存储在一个计算机可读取存储介质中。上述软件功能单元存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(processor)执行本发明各个实施例所述方法的部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-OnlyMemory,ROM)、随机存取存储器(RandomAccessMemory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
本领域技术人员可以清楚地了解到,为描述的方便和简洁,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的装置的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
最后应说明的是:以上各实施例仅用以说明本发明实施例的技术方案,而非对其限制;尽管参照前述各实施例对本发明实施例进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明实施例各实施例技术方案的范围。

Claims (15)

1.一种数据处理方法,应用于计算机存储***,所述计算机存储***包括第一控制板,其中,所述第一控制板包括加速引擎、第一内存、内部总线、第一网卡以及第一中央处理器CPU,其特征在于,所述方法包括:
所述加速引擎通过所述内部总线将待存储数据同时复制到所述第一内存以及所述第一网卡;
所述加速引擎向所述第一CPU发送通知消息,所述通知消息中包含处理完成状态标识以及发送完成状态标识。
2.根据权利要求1所述的方法,其特征在于,所述加速引擎通过所述内部总线将所述待处理数据同时复制到所述第一内存以及所述第一网卡之前,还包括:
所述加速引擎根据预置算法对待处理数据进行处理;
所述加速引擎存储数据资源,所述数据资源包括所述待存储数据,以及根据所述预置算法处理所述待处理数据过程中所产生的中间数据。
3.根据权利要求1或2所述的方法,其特征在于,所述计算机存储***还包括第二控制板,所述第二控制板包括第二网卡以及第二CPU;
所述加速引擎向所述第一CPU发送通知消息之后,还包括:
所述加速引擎接收所述第二CPU通过所述第二网卡发送的接收响应;所述接收响应用于表明所述第二CPU正确接收了所述第一网卡发送的所述待存储数据;
所述加速引擎将所述接收响应发送给所述第一CPU;
所述加速引擎接收所述第一CPU发送的资源释放命令;
所述加速引擎根据所述资源释放命令释放所述数据资源。
4.根据权利要求1-3任一所述的方法,其特征在于,所述加速引擎向所述第一CPU发送通知消息之后,还包括:
所述加速引擎启动定时器;
若所述定时器超时,所述加速引擎没有接收到所述接收响应,则所述加速引擎重新发送所述待存储数据。
5.根据权利要求4所述的方法,其特征在于,所述加速引擎根据预置算法对待处理数据进行处理之前,还包括:
所述加速引擎接收所述第一CPU发送的数据处理通知;所述数据处理通知是所述第一CPU在将所述待处理数据和所述预置算法放入所述第一内存后发送的;
所述加速引擎根据所述数据处理通知,从所述第一内存获取所述待处理数据以及所述预置算法。
6.根据权利要求1-5任一所述的方法,其特征在于,所述加速引擎通过所述内部总线将待存储数据同时复制到所述第一内存以及所述第一网卡,具体包括:
所述加速引擎使用直接数据存储DMA,通过所述内部总线将所述待存储数据同时复制到所述第一内存以及所述第一网卡。
7.一种加速引擎,其特征在于,包括:
复制模块,用于通过内部总线将待存储数据同时复制到第一内存以及第一网卡;
发送模块,用于向第一中央处理器CPU发送通知消息,所述通知消息中包含处理完成状态标识以及发送完成状态标识。
8.根据权利要求7所述的加速引擎,其特征在于,所述加速引擎还包括:
处理模块,用于根据预置算法对待处理数据进行处理;
存储模块,用于存储数据资源,所述数据资源包括所述待存储数据,以及根据所述预置算法处理所述待处理数据过程中所产生的中间数据。
9.根据权利要求7或8所述的加速引擎,其特征在于,所述加速引擎还包括:
接收模块,用于接收第二CPU通过所述第二网卡发送的接收响应;所述接收响应用于表明所述第二CPU正确接收了所述第一网卡发送的所述待存储数据;
所述发送模块用于将所述接收响应发送给所述第一CPU;
所述接收模块用于接收所述第一CPU发送的资源释放命令;
所述加速引擎还包括释放模块,用于根据所述资源释放命令释放所述数据资源。
10.根据权利要求7-9任一所述的加速引擎,其特征在于,所述加速引擎还包括:
启动模块,用于启动定时器;
若所述定时器超时,所述接收模块没有接收到所述接收响应,则所述发送模块重新发送所述待存储数据。
11.根据权利要求10所述的加速引擎,其特征在于,所述接收模块还用于接收所述第一CPU发送的数据处理通知;所述数据处理通知是所述第一CPU在将所述待处理数据和所述预置算法放入所述第一内存后发送的;
加速引擎还包括获取模块,用于根据所述数据处理通知,从所述第一内存获取所述待处理数据以及所述预置算法。
12.根据权利要求7-11任一所述的加速引擎,其特征在于,所述复制模块具体用于:使用直接数据存储DMA,通过所述内部总线将所述待存储数据同时复制到所述第一内存以及所述第一网卡。
13.一种控制板,其特征在于,包括:中央处理器CPU、内存、内部总线、网卡以及加速引擎;
所述内存用于存储数据、配置参数和程序;所述数据包括待处理数据和待存储数据;
所述CPU用于执行所述内存中存储的程序;
所述内部总线用于实现所述内存、所述CPU、所述网卡和所述加速引擎之间的通信;
所述网卡用于通过远程直接数据存取RDMA传递所述待存储数据;
所述加速引擎用于执行如权利要求1-6任一所述的数据处理方法。
14.一种控制板,其特征在于,包括:内存和片上***SOC;
其中,所述内存用于存储数据、配置参数和程序;所述数据包括待处理数据和待存储数据;
所述SOC包括中央处理器CPU、网卡、内部总线以及加速引擎;所述CPU用于执行所述内存中存储的程序;所述网卡用于通过远程直接数据存取RDMA传递所述待存储数据;所述内部总线用于实现所述内存、所述CPU、所述网卡和所述加速引擎之间的通信;所述加速引擎用于执行如权利要求1-6任一所述的数据处理方法。
15.一种数据处理***,其特征在于,包括:至少两个如权利要求13所述的控制板和/或如权利要求14所述的控制板。
CN201410852968.7A 2014-12-31 2014-12-31 数据处理方法、加速引擎、控制板和*** Active CN105808345B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201410852968.7A CN105808345B (zh) 2014-12-31 2014-12-31 数据处理方法、加速引擎、控制板和***

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201410852968.7A CN105808345B (zh) 2014-12-31 2014-12-31 数据处理方法、加速引擎、控制板和***

Publications (2)

Publication Number Publication Date
CN105808345A true CN105808345A (zh) 2016-07-27
CN105808345B CN105808345B (zh) 2019-03-08

Family

ID=56420665

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201410852968.7A Active CN105808345B (zh) 2014-12-31 2014-12-31 数据处理方法、加速引擎、控制板和***

Country Status (1)

Country Link
CN (1) CN105808345B (zh)

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2019205445A1 (zh) * 2018-04-27 2019-10-31 江苏华存电子科技有限公司 一种闪存存储***的效能加速方法
CN112099940A (zh) * 2016-08-26 2020-12-18 华为技术有限公司 实现硬件加速处理的方法、设备和***
CN113778320A (zh) * 2020-06-09 2021-12-10 华为技术有限公司 网卡以及网卡处理数据的方法
CN116627893A (zh) * 2023-07-18 2023-08-22 苏州浪潮智能科技有限公司 加速引擎配置方法、装置、并行数估计***、设备及介质
US12014173B2 (en) 2020-06-09 2024-06-18 Huawei Technologies Co., Ltd. Data processing method for network adapter and network adapter

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101599991A (zh) * 2009-07-07 2009-12-09 浪潮电子信息产业股份有限公司 一种基于高速通信协议的提升网络文件***性能的方法
CN102439983A (zh) * 2011-10-27 2012-05-02 华为技术有限公司 一种数据快速分发方法和装置
CN103477588A (zh) * 2011-02-16 2013-12-25 甲骨文国际公司 刀片服务器中刀片间网络业务的分类和管理方法和***
CN104094244A (zh) * 2011-09-30 2014-10-08 英特尔公司 对于***协处理器的直接i/o访问
US20140317221A1 (en) * 2011-11-29 2014-10-23 Extoll Gmbh System, computer-implemented method and computer program product for direct communication between hardward accelerators in a computer cluster

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101599991A (zh) * 2009-07-07 2009-12-09 浪潮电子信息产业股份有限公司 一种基于高速通信协议的提升网络文件***性能的方法
CN103477588A (zh) * 2011-02-16 2013-12-25 甲骨文国际公司 刀片服务器中刀片间网络业务的分类和管理方法和***
CN104094244A (zh) * 2011-09-30 2014-10-08 英特尔公司 对于***协处理器的直接i/o访问
CN102439983A (zh) * 2011-10-27 2012-05-02 华为技术有限公司 一种数据快速分发方法和装置
US20140317221A1 (en) * 2011-11-29 2014-10-23 Extoll Gmbh System, computer-implemented method and computer program product for direct communication between hardward accelerators in a computer cluster

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
曾文龙,周游,贺珊,郭东辉: "基于多通道DMA控制器的媒体播放器SoC设计与验证", 《中国科技论文》 *

Cited By (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112099940A (zh) * 2016-08-26 2020-12-18 华为技术有限公司 实现硬件加速处理的方法、设备和***
WO2019205445A1 (zh) * 2018-04-27 2019-10-31 江苏华存电子科技有限公司 一种闪存存储***的效能加速方法
CN113778320A (zh) * 2020-06-09 2021-12-10 华为技术有限公司 网卡以及网卡处理数据的方法
US12014173B2 (en) 2020-06-09 2024-06-18 Huawei Technologies Co., Ltd. Data processing method for network adapter and network adapter
CN116627893A (zh) * 2023-07-18 2023-08-22 苏州浪潮智能科技有限公司 加速引擎配置方法、装置、并行数估计***、设备及介质
CN116627893B (zh) * 2023-07-18 2023-11-03 苏州浪潮智能科技有限公司 加速引擎配置方法、装置、并行数估计***、设备及介质

Also Published As

Publication number Publication date
CN105808345B (zh) 2019-03-08

Similar Documents

Publication Publication Date Title
CN105808345A (zh) 数据处理方法、加速引擎、控制板和***
CN110046896B (zh) 一种区块处理方法和节点以及***
JP2019516171A5 (zh)
CN110750341B (zh) 任务调度方法、装置、***、终端设备及存储介质
CN106354865B (zh) 一种同步主从数据库的方法、装置和***
CN104516851A (zh) 一种rs485从设备地址分配的***和方法
CN104158757A (zh) 一种gps数据入库处理方法和***
WO2016107443A1 (zh) 一种快照处理方法及相关设备
CN107041017A (zh) Ue上下文信息恢复方法、装置和***
CN103812945A (zh) 一种数据升级的方法和中心服务器
US11736567B2 (en) Data transmission and network interface controller
CN102870374A (zh) 负荷分担方法及装置、单板
US9081912B2 (en) Method and apparatus for node hot-swapping
CN109189702A (zh) 一种Scatter-Gather DMA的数据传输缓冲区设计方法
US6944733B2 (en) Data storage using wireless communication
US9332071B2 (en) Data stage-in for network nodes
CN105868121B (zh) 一种信息处理方法及电子设备
US8806082B2 (en) Direct memory access device for multi-core system and operating method of the same
CN110018792B (zh) 一种待落盘数据处理方法、装置、电子设备及存储介质
WO2023024246A1 (zh) 一种乱序数据的产生方法、装置、设备及存储介质
CN103117955B (zh) 消息传输方法及装置、***
CN103812899A (zh) 一种传输文件方法、装置及***
CN103399949B (zh) 一种数据库存储块状态控制方法和装置
CN103514126B (zh) 一种数据的接收方法、***以及装置
CN104850517B (zh) 一种dma传输报文数据的方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant