CN109710266B - 一种异构系统中的任务处理方法、主机服务器、异构系统 - Google Patents
一种异构系统中的任务处理方法、主机服务器、异构系统 Download PDFInfo
- Publication number
- CN109710266B CN109710266B CN201910042605.XA CN201910042605A CN109710266B CN 109710266 B CN109710266 B CN 109710266B CN 201910042605 A CN201910042605 A CN 201910042605A CN 109710266 B CN109710266 B CN 109710266B
- Authority
- CN
- China
- Prior art keywords
- board card
- fpga board
- mapping
- host server
- compiling
- 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.)
- Active
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 29
- 238000013507 mapping Methods 0.000 claims abstract description 96
- 230000015654 memory Effects 0.000 claims abstract description 63
- 238000012545 processing Methods 0.000 claims abstract description 43
- 230000006870 function Effects 0.000 claims abstract description 39
- 238000000034 method Methods 0.000 claims description 41
- 238000012423 maintenance Methods 0.000 claims description 34
- 238000006243 chemical reaction Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 3
- 230000003993 interaction Effects 0.000 abstract description 8
- 238000004891 communication Methods 0.000 abstract description 6
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 238000010586 diagram Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 230000009471 action Effects 0.000 description 3
- 230000008878 coupling Effects 0.000 description 3
- 238000010168 coupling process Methods 0.000 description 3
- 238000005859 coupling reaction Methods 0.000 description 3
- 230000001360 synchronised effect Effects 0.000 description 3
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000004364 calculation method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000001052 transient effect Effects 0.000 description 1
Images
Landscapes
- Stored Programmes (AREA)
Abstract
本发明公开了一种异构系统中的任务处理方法,通过主机服务器预先将根据FPGA板卡的应用功能生成的库文件放入本地编译环境进行编译,可以使该库文件与主机服务器其他程序共同编译为一个统一的执行文件,同时通过映射命令建立FPGA板卡的内存与主机服务器的内存之间的映射,使主机服务器在需要FPGA板卡完成任务时,只需调用库文件,无需发送命令,就可以使FPGA板卡执行任务,并通过映射将任务处理结果同步至主机服务器,从而省去了主机服务器与FPGA板卡之间通信的延迟时间,减少了异构系统中任务处理的延迟,提高了数据交互的效率。本发明还提供一种主机服务器、异构系统及计算机可读存储介质,具有上述有益效果。
Description
技术领域
本发明涉及异构系统技术领域,特别是涉及一种异构系统中的任务处理方法、主机服务器、异构系统及计算机可读存储介质。
背景技术
现有技术中的异构系统,是由主机服务器和FPGA板卡组成的一种特殊的结构,FPGA板卡通过PCIE接口插到主机服务器上,在软件层面上相当于两个设备,属于主从关系。主机服务器通过PCIE总线加载程序到FPGA板卡,或者FPGA板卡通过自带的FLASH自行加载程序。当主机服务器需要进行大数据计算的时候,通过PCIE总线传递需要处理的数据和对应的命令,并通知FPGA板卡需要处理的数据的位置,FPGA处理完成后,再通过命令的方式告知主机服务器数据处理完成的消息。
基于这种命令的形式,在主机服务器端和从属的FPGA板卡端都需要设置单独的任务来轮询等待命令,主机服务器需要不停地查询任务状态或通过中断的模式等待上报,当查询到FPGA板卡的上报命令、得到处理完成的数据后,才能进行下一次的数据处理。这种模式增加了任务处理的延迟时间,降低了数据交互的效率,同时软件的复杂度也会提高。
如何减少异构系统中任务处理的延迟,提高数据交互的效率,是本领域技术人员需要解决的技术问题。
发明内容
本发明的目的是提供一种异构系统中的任务处理方法、主机服务器、异构系统及计算机可读存储介质,减少了异构系统中任务处理的延迟,提高了数据交互的效率,简化了软件设计。
为解决上述技术问题,本发明提供一种异构系统中的任务处理方法,基于主机服务器,包括:
预先将根据FPGA板卡的应用功能生成的库文件放入本地编译环境进行编译,并向所述FPGA板卡发送建立所述FPGA板卡的内存与所述主机服务器的内存之间的映射的映射命令,以使所述FPGA板卡根据所述映射命令建立所述映射;
调用所述库文件以执行需要所述FPGA板卡完成的任务。
可选的,还包括:
调用所述库文件读取所述任务的处理结果。
可选的,所述将根据FPGA板卡的应用功能生成的库文件放入本地编译环境进行编译,具体包括:
接收输入的根据所述FPGA板卡的应用功能编译的C语言文件;
调用转换工具将所述C语言文件转换为VHDL语言的库文件;
将所述VHDL语言的库文件放入所述本地编译环境进行编译。
可选的,还包括:
接收并执行对所述库文件的维护命令;
将所述维护命令通过所述映射同步至所述FPGA板卡以完成所述FPGA板卡的维护。
为解决上述技术问题,本发明还提供一种异构系统中的任务处理方法,包括:
主机服务器预先将根据FPGA板卡的应用功能生成的库文件放入本地编译环境进行编译,并向所述FPGA板卡发送建立所述FPGA板卡的内存与所述主机服务器的内存之间的映射的映射命令;
所述FPGA板卡根据所述映射命令建立所述映射;
所述主机服务器调用所述库文件以执行需要所述FPGA板卡完成的任务;
所述FPGA板卡基于所述映射执行所述任务。
可选的,还包括:
所述FPGA板卡基于所述映射执行完所述任务后,将所述任务的处理结果存储所述FPGA板卡的内存,并通过所述映射将所述处理结果同步至所述主机服务器的内存;
所述主机服务器调用所述库文件读取所述任务的处理结果。
为解决上述技术问题,本发明还提供一种主机服务器,包括:
编译单元,用于预先将根据FPGA板卡的应用功能生成的库文件放入本地编译环境进行编译,并向所述FPGA板卡发送建立所述FPGA板卡的内存与所述主机服务器的内存之间的映射的映射命令,以使所述FPGA板卡根据所述映射命令建立所述映射;
执行单元,用于调用所述库文件以执行需要所述FPGA板卡完成的任务。
为解决上述技术问题,本发明还提供一种异构系统,包括:
主机服务器,用于预先将根据FPGA板卡的应用功能生成的库文件放入本地编译环境进行编译,并向所述FPGA板卡发送建立所述FPGA板卡的内存与所述主机服务器的内存之间的映射的映射命令;并在所述FPGA板卡根据所述映射命令建立所述映射后调用所述库文件以执行需要所述FPGA板卡完成的任务;
所述FPGA板卡,用于根据所述映射命令建立所述映射,并基于所述映射执行所述任务。
为解决上述技术问题,本发明还提供一种主机服务器,包括:
存储器,用于存储指令,所述指令包括基于主机服务器的任意一项所述异构体系中的任务处理方法的步骤;
处理器,用于执行所述指令。
为解决上述技术问题,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现基于主机服务器的任意一项所述异构体系中的任务处理方法的步骤。
本发明所提供的异构系统中的任务处理方法,通过主机服务器预先将根据FPGA板卡的应用功能生成的库文件放入本地编译环境进行编译,可以使该库文件与主机服务器其他程序共同编译为一个统一的执行文件,同时通过映射命令建立FPGA板卡的内存与主机服务器的内存之间的映射,使主机服务器可以将FPGA板卡的内存当作自己的内存,在需要FPGA板卡完成任务时,主机服务器只需调用库文件,无需发送命令,就可以使FPGA板卡执行任务,并通过映射将任务处理结果同步至主机服务器,从而省去了主机服务器与FPGA板卡之间通信的延迟时间,减少了异构系统中任务处理的延迟,提高了数据交互的效率。同时,由于主机服务器的执行文件中包含了由FPGA板卡的应用功能生成的库文件,运维人员在后期维护时只需维护一套程序即可,相比于现有技术中需要分别维护两个设备中的程序,减轻了运维人员的工作压力。本发明还提供一种主机服务器、异构系统及计算机可读存储介质,具有上述有益效果,在此不再赘述。
附图说明
为了更清楚的说明本发明实施例或现有技术的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的第一种异构系统中的任务处理方法的流程图;
图2为本发明实施例提供的第二种异构系统中的任务处理方法的流程图;
图3为本发明实施例提供的第三种异构系统中的任务处理方法的流程图;
图4为本发明实施例提供的第四种异构系统中的任务处理方法的流程图;
图5为本发明实施例提供的第五种异构系统中的任务处理方法的流程图;
图6为本发明实施例提供的一种主机服务器的结构示意图;
图7为本发明实施例提供的另一种主机服务器的结构示意图;
图8为本发明实施例提供的一种异构系统的结构示意图。
具体实施方式
本发明的核心是提供一种异构系统中的任务处理方法、主机服务器、异构系统及计算机可读存储介质,减少了异构系统中任务处理的延迟,提高了数据交互的效率,简化了软件设计。
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明实施例提供的第一种异构系统中的任务处理方法的流程图。如图1所示,基于主机服务器,异构系统中的任务处理方法包括:
S10:预先将根据FPGA板卡的应用功能生成的库文件放入本地编译环境进行编译,并向FPGA板卡发送建立FPGA板卡的内存与主机服务器的内存之间的映射的映射命令,以使FPGA板卡根据映射命令建立映射。
在现有技术中,作为异构系统中的组成部分,主机服务器与FPGA板卡虽然实现了数据共享,但是仍保有各自的应用特性、完整性控制和安全性控制,相当于两个设备。如果将主机服务器和FPGA板卡融为一体,变为一个设备,则能够省去二者之间的通信时间,提高数据交互效率。
在具体实施中,将主机服务器和FPGA板卡融为一体,可通过将二者所有的应用程序都编译在主机服务器端来实现。先将FPGA板卡端的应用功能模块化,抽象成独立的函数,编译成库的形式,将库文件放到主机服务器的编译环境中去。主机服务器上的程序在编译的时候,加上该库文件一起编译,生成一个统一的执行文件。主机服务器端在需要FPGA板卡执行任务的时候,直接调用库文件中的接口函数,这些接口函数再调用库文件中的具体功能实现。
主机服务器将根据FPGA板卡的应用功能生成的库文件放入本地编译环境进行编译,具体可以包括:
接收输入的根据FPGA板卡的应用功能编译的C语言文件;
调用转换工具将C语言文件转换为VHDL语言的库文件;
将VHDL语言的库文件放入本地编译环境进行编译。
运维人员根据FPGA板卡的应用功能编译为C语言文件,将该C语言文件输入主机服务器。主机服务器根据预设的转换工具,将C语言文件转换为VHDL语言的库文件,再将VHDL语言的库文件放入本地编译环境同主机服务器的其他程序一起进行统一编译。可以理解的是,运维人员除了应用C语言编写原始文件外,还可以采用其他语言编写,库文件可以采用VHDL语言,也可以采用其他硬件语言,转换工具可以采用现有技术中的转换工具,根据原始文件的语言以及库文件的语言进行选择即可。
为了使FPGA板卡执行任务代码,需要主机服务器在加载程序的时候,将库文件同时加载到FPGA板卡的内存中,因此,预先还需要主机服务器向FPGA板卡发送建立FPGA板卡的内存与主机服务器的内存之间的映射的映射命令,以使FPGA板卡根据映射命令建立映射,这时主机服务器可以将FPGA板卡的内存当作自己的内存来使用,这些内存就可以用于加载库文件(即FPGA板卡的代码)。
需要说明的是,创建、编译库文件与建立映射这两件任务可以同时进行,也可以先后进行。
S11:调用库文件以执行需要FPGA板卡完成的任务。
在具体实施中,主机服务器将本地内存和FPGA板卡的内存视为一体,在自己的内存中加载执行文件中的其他代码的同时,还在自己的内存中运行库文件,相当于运行一个独立的PR程序,完成之后的结果可以放到自己的内存中。这样就可以将主机服务器与FPGA板卡的代码统一,将之视为一个整体去执行。
本发明实施例提供的异构系统中的任务处理方法,通过主机服务器预先将根据FPGA板卡的应用功能生成的库文件放入本地编译环境进行编译,可以使该库文件与主机服务器其他程序共同编译为一个统一的执行文件,同时通过映射命令建立FPGA板卡的内存与主机服务器的内存之间的映射,使主机服务器可以将FPGA板卡的内存当作自己的内存,在需要FPGA板卡完成任务时,主机服务器只需调用库文件,无需发送命令,就可以使FPGA板卡执行任务,并通过映射将任务处理结果同步至主机服务器,从而省去了主机服务器与FPGA板卡之间通信的延迟时间,减少了异构系统中任务处理的延迟,提高了数据交互的效率。同时,由于主机服务器的执行文件中包含了由FPGA板卡的应用功能生成的库文件,运维人员在后期维护时只需维护一套程序即可,相比于现有技术中需要分别维护两个设备中的程序,减轻了运维人员的工作压力。
图2为本发明实施例提供的第二种异构系统中的任务处理方法的流程图。如图2所示,在上述实施例的基础上,在另一实施例中,基于主机服务器,异构系统中的任务处理方法还包括:
S20:调用库文件读取任务的处理结果。
FPGA板卡执行任务完毕之后的结果存放到自己的内存中,由于映射,相当于放置于主机服务器与FPGA板卡共同的内存中,主机服务器通过库文件查看任务处理进程或读取处理结果。
图3为本发明实施例提供的第三种异构系统中的任务处理方法的流程图。如图3所示,在上述实施例的基础上,在另一实施例中,基于主机服务器,异构系统中的任务处理方法还包括:
S30:接收并执行对库文件的维护命令。
S31:将维护命令通过映射同步至FPGA板卡以完成FPGA板卡的维护。
在具体实施中,由于主机服务器与FPGA板卡的代码统一,主机服务器将之视为一个整体去执行,提供了减轻运维人员工作的条件。因此在上述实施例的基础上,异构系统中的任务处理方法还可以包括接收并执行对库文件的维护命令,同时将维护命令通过映射同步至FPGA板卡以完成FPGA板卡的维护。而对于运维人员来说,需要维护的只是统一的执行文件。
图4为本发明实施例提供的第四种异构系统中的任务处理方法的流程图。如图4所示,异构系统中的任务处理方法包括:
S40:主机服务器预先将根据FPGA板卡的应用功能生成的库文件放入本地编译环境进行编译,并向FPGA板卡发送建立FPGA板卡的内存与主机服务器的内存之间的映射的映射命令。
S41:FPGA板卡根据映射命令建立映射。
S42:主机服务器调用库文件以执行需要FPGA板卡完成的任务。
S43:FPGA板卡基于映射执行任务。
与上述实施例中的异构系统中的任务处理方法相对应,在主机服务器预先将根据FPGA板卡的应用功能生成的库文件放入本地编译环境进行编译,并向FPGA板卡发送建立FPGA板卡的内存与主机服务器的内存之间的映射的映射命令后,FPGA板卡根据映射命令建立映射,完成这两件设置后,主机服务器调用库文件以执行需要FPGA板卡完成的任务,FPGA板卡再基于映射执行任务。
具体原理和实施方式可以参考上述实施例,在此不再赘述。
图5为本发明实施例提供的第五种异构系统中的任务处理方法的流程图。如图5所示,在上述实施例的基础上,在另一实施例中,异构系统中的任务处理方法还包括:
S50:FPGA板卡基于映射执行完任务后,将任务的处理结果存储FPGA板卡的内存,并通过映射将处理结果同步至主机服务器的内存。
S51:主机服务器调用库文件读取任务的处理结果。
在具体实施中,FPGA板卡基于映射执行完任务后,将任务的处理结果存储FPGA板卡的内存,并通过映射将处理结果同步至主机服务器的内存,从而对于主机服务器来说,相当于处理结果直接存储于一体的内存中。主机服务器只需调用库文件接口读取任务的处理结果。
具体原理和实施方式可以参考上述实施例,在此不再赘述。
上文详述了异构系统中的任务处理方法对应的各个实施例,在此基础上,本发明还公开了与上述方法对应的主机服务器。
图6为本发明实施例提供的一种主机服务器的结构示意图。如图6所示,主机服务器包括:
编译单元601,用于预先将根据FPGA板卡的应用功能生成的库文件放入本地编译环境进行编译,并向FPGA板卡发送建立FPGA板卡的内存与主机服务器的内存之间的映射的映射命令,以使FPGA板卡根据映射命令建立映射;
执行单元602,用于调用库文件以执行需要FPGA板卡完成的任务。
进一步的,主机服务器还包括:
查看单元,用于调用库文件读取任务的处理结果。
可选的,主机服务器还可以包括:
第一接收单元,用于接收输入的根据FPGA板卡的应用功能编译的C语言文件;
转换单元,用于调用转换工具将C语言文件转换为VHDL语言的库文件;
编译单元,用于将VHDL语言的库文件放入本地编译环境进行编译。
可选的,主机服务器还可以包括:
第二接收单元,用于接收并执行对库文件的维护命令;
同步单元,用于将维护命令通过映射同步至FPGA板卡以完成FPGA板卡的维护。
由于主机服务器部分的实施例与方法部分的实施例相互对应,因此主机服务器部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
图7为本发明实施例提供的另一种主机服务器的结构示意图。如图7所示,该主机服务器可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上处理器(central processing units,CPU)710(例如,一个或一个以上处理器)和存储器720,一个或一个以上存储应用程序733或数据732的存储介质730(例如一个或一个以上海量存储设备)。其中,存储器720和存储介质730可以是短暂存储或持久存储。存储在存储介质730的程序可以包括一个或一个以上模块(图示没标出),每个模块可以包括对计算装置中的一系列指令操作。更进一步地,处理器710可以设置为与存储介质730通信,在主机服务器700上执行存储介质730中的一系列指令操作。
主机服务器700还可以包括一个或一个以上电源740,一个或一个以上有线或无线网络接口750,一个或一个以上输入输出接口760,和/或,一个或一个以上操作系统731,例如Windows ServerTM,Mac OS XTM,UnixTM,LinuxTM,FreeBSDTM等等。
上述图1至图5所描述的异构系统中的任务处理方法中的步骤由主机服务器基于该图7所示的结构实现。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的主机服务器及计算机可读存储介质的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
上文详述了异构系统中的任务处理方法及主机服务器对应的各个实施例,在此基础上,本发明还公开了与上述方法及主机服务器对应的异构系统。
图8为本发明实施例提供的一种异构系统的结构示意图。如图8所示,异构系统包括:
主机服务器700,用于预先将根据FPGA板卡的应用功能生成的库文件放入本地编译环境进行编译,并向FPGA板卡发送建立FPGA板卡的内存与主机服务器的内存之间的映射的映射命令;并在FPGA板卡根据映射命令建立映射后调用库文件以执行需要FPGA板卡完成的任务;
FPGA板卡800,用于根据映射命令建立映射,并基于映射执行任务。
由于异构系统部分的实施例与方法及主机服务器部分的实施例相互对应,因此异构系统部分的实施例请参见方法及主机服务器部分的实施例的描述,这里暂不赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的方法、主机服务器、异构系统及计算机可读存储介质,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,模块的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个模块或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或模块的间接耦合或通信连接,可以是电性,机械或其它的形式。作为分离部件说明的模块可以是或者也可以不是物理上分开的,作为模块显示的部件可以是或者也可以不是物理模块,即可以位于一个地方,或者也可以分布到多个网络模块上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。
另外,在本申请各个实施例中的各功能模块可以集成在一个处理模块中,也可以是各个模块单独物理存在,也可以两个或两个以上模块集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。
集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,功能调用装置,或者网络设备等)执行本申请各个实施例方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random Access Memory,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上对本发明所提供的一种异构系统中的任务处理方法、主机服务器、异构系统及计算机可读存储介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (8)
1.一种异构系统中的任务处理方法,其特征在于,基于主机服务器,包括:
预先将根据FPGA板卡的应用功能生成的库文件放入本地编译环境进行编译,并向所述FPGA板卡发送建立所述FPGA板卡的内存与所述主机服务器的内存之间的映射的映射命令,以使所述FPGA板卡根据所述映射命令建立所述映射;
调用所述库文件以执行需要所述FPGA板卡完成的任务;
接收并执行对所述库文件的维护命令;
将所述维护命令通过所述映射同步至所述FPGA板卡以完成所述FPGA板卡的维护;
其中,所述将根据FPGA板卡的应用功能生成的库文件放入本地编译环境进行编译,具体包括:
接收输入的根据所述FPGA板卡的应用功能编译的C语言文件;
调用转换工具将所述C语言文件转换为VHDL语言的库文件;
将所述VHDL语言的库文件放入所述本地编译环境进行编译。
2.根据权利要求1所述的任务处理方法,其特征在于,还包括:
调用所述库文件读取所述任务的处理结果。
3.一种异构系统中的任务处理方法,其特征在于,包括:
主机服务器预先将根据FPGA板卡的应用功能生成的库文件放入本地编译环境进行编译,并向所述FPGA板卡发送建立所述FPGA板卡的内存与所述主机服务器的内存之间的映射的映射命令;
所述FPGA板卡根据所述映射命令建立所述映射;
所述主机服务器调用所述库文件以执行需要所述FPGA板卡完成的任务;
所述FPGA板卡基于所述映射执行所述任务;
所述主机服务器接收并执行对所述库文件的维护命令;将所述维护命令通过所述映射同步至所述FPGA板卡以完成所述FPGA板卡的维护;
其中,所述主机服务器预先将根据FPGA板卡的应用功能生成的库文件放入本地编译环境进行编译,具体包括:
接收输入的根据所述FPGA板卡的应用功能编译的C语言文件;
调用转换工具将所述C语言文件转换为VHDL语言的库文件;
将所述VHDL语言的库文件放入所述本地编译环境进行编译。
4.根据权利要求3所述的异构系统中的任务处理方法,其特征在于,还包括:
所述FPGA板卡基于所述映射执行完所述任务后,将所述任务的处理结果存储所述FPGA板卡的内存,并通过所述映射将所述处理结果同步至所述主机服务器的内存;
所述主机服务器调用所述库文件读取所述任务的处理结果。
5.一种主机服务器,其特征在于,包括:
编译单元,用于预先将根据FPGA板卡的应用功能生成的库文件放入本地编译环境进行编译,并向所述FPGA板卡发送建立所述FPGA板卡的内存与所述主机服务器的内存之间的映射的映射命令,以使所述FPGA板卡根据所述映射命令建立所述映射;
执行单元,用于调用所述库文件以执行需要所述FPGA板卡完成的任务;
第二接收单元,用于接收并执行对所述库文件的维护命令;
同步单元,用于将所述维护命令通过所述映射同步至所述FPGA板卡以完成所述FPGA板卡的维护;
其中,所述编译单元包括:
第一接收单元,用于接收输入的根据所述FPGA板卡的应用功能编译的C语言文件;
转换单元,用于调用转换工具将所述C语言文件转换为VHDL语言的库文件;
编译单元,用于将所述VHDL语言的库文件放入所述本地编译环境进行编译。
6.一种异构系统,其特征在于,包括:
主机服务器,用于预先将根据FPGA板卡的应用功能生成的库文件放入本地编译环境进行编译,并向所述FPGA板卡发送建立所述FPGA板卡的内存与所述主机服务器的内存之间的映射的映射命令;并在所述FPGA板卡根据所述映射命令建立所述映射后调用所述库文件以执行需要所述FPGA板卡完成的任务;接收并执行对所述库文件的维护命令;将所述维护命令通过所述映射同步至所述FPGA板卡以完成所述FPGA板卡的维护;
所述FPGA板卡,用于根据所述映射命令建立所述映射,并基于所述映射执行所述任务;
其中,所述主机服务器预先将根据FPGA板卡的应用功能生成的库文件放入本地编译环境进行编译,具体包括:
接收输入的根据所述FPGA板卡的应用功能编译的C语言文件;
调用转换工具将所述C语言文件转换为VHDL语言的库文件;
将所述VHDL语言的库文件放入所述本地编译环境进行编译。
7.一种主机服务器,其特征在于,包括:
存储器,用于存储指令,所述指令包括权利要求1或2所述异构系统中的任务处理方法的步骤;
处理器,用于执行所述指令。
8.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1或2所述异构系统中的任务处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910042605.XA CN109710266B (zh) | 2019-01-17 | 2019-01-17 | 一种异构系统中的任务处理方法、主机服务器、异构系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910042605.XA CN109710266B (zh) | 2019-01-17 | 2019-01-17 | 一种异构系统中的任务处理方法、主机服务器、异构系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109710266A CN109710266A (zh) | 2019-05-03 |
CN109710266B true CN109710266B (zh) | 2022-02-18 |
Family
ID=66262182
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910042605.XA Active CN109710266B (zh) | 2019-01-17 | 2019-01-17 | 一种异构系统中的任务处理方法、主机服务器、异构系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109710266B (zh) |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102520922A (zh) * | 2011-11-14 | 2012-06-27 | 上海交通大学 | 一种协作环境下的远程开发方法及其系统 |
CN103870310A (zh) * | 2014-02-18 | 2014-06-18 | 小米科技有限责任公司 | 程序编译方法及相关装置 |
US9038189B1 (en) * | 2011-02-24 | 2015-05-19 | Rexante, LLC | System and method for programming a trading system |
CN107528690A (zh) * | 2017-10-10 | 2017-12-29 | 郑州云海信息技术有限公司 | 一种基于异构加速平台的sm4对称加解密方法及系统 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7353162B2 (en) * | 2005-02-11 | 2008-04-01 | S2C, Inc. | Scalable reconfigurable prototyping system and method |
-
2019
- 2019-01-17 CN CN201910042605.XA patent/CN109710266B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9038189B1 (en) * | 2011-02-24 | 2015-05-19 | Rexante, LLC | System and method for programming a trading system |
CN102520922A (zh) * | 2011-11-14 | 2012-06-27 | 上海交通大学 | 一种协作环境下的远程开发方法及其系统 |
CN103870310A (zh) * | 2014-02-18 | 2014-06-18 | 小米科技有限责任公司 | 程序编译方法及相关装置 |
CN107528690A (zh) * | 2017-10-10 | 2017-12-29 | 郑州云海信息技术有限公司 | 一种基于异构加速平台的sm4对称加解密方法及系统 |
Non-Patent Citations (1)
Title |
---|
异构众核系统及其编程模型与性能优化技术研究综述;巨涛;《电子学报》;20150131;111-119 * |
Also Published As
Publication number | Publication date |
---|---|
CN109710266A (zh) | 2019-05-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109033328B (zh) | 一种访问请求处理方法、装置、设备及可读存储介质 | |
CN111399897A (zh) | 基于kubernetes的应用发布方法以及系统 | |
CN105550039A (zh) | 一种基于Redhat Linux系统下网卡性能调优的实现方法 | |
CN112433916A (zh) | 一种消息中间件系统状态的检查方法、装置、设备及存储介质 | |
CN105094840A (zh) | 一种基于缓存一致性原理的原子操作实现方法及装置 | |
CN112799349A (zh) | 一种上下位机的控制方法、系统、电子设备及存储介质 | |
CN109660391A (zh) | 一种池化服务器系统固件升级方法、系统及相关装置 | |
CN109507991B (zh) | 一种双轴伺服控制平台调试系统及方法 | |
CN109710266B (zh) | 一种异构系统中的任务处理方法、主机服务器、异构系统 | |
CN115794355B (zh) | 任务处理方法、装置、终端设备及存储介质 | |
CN110401939B (zh) | 一种低功耗蓝牙控制器链路层装置 | |
CN104951346A (zh) | 一种用于嵌入式系统的进程管理方法及系统 | |
CN111767126A (zh) | 分布式批量处理的系统和方法 | |
CN115237574A (zh) | 人工智能芯片的调度方法、装置及电子设备 | |
CN112486274B (zh) | 计算机扩展卡及计算机系统 | |
CN113986723A (zh) | 一种mock测试方法及其相关设备 | |
CN109960564B (zh) | 一种虚拟机迁移的方法 | |
CN113392052A (zh) | 一种基于四路服务器的bios系统、方法及计算机可读存储介质 | |
CN103440325A (zh) | 高效、多并发、自适用的数据库及其运行方法 | |
CN111124515B (zh) | 一种基于云端的最小化bios的实现方法及系统 | |
CN113391942B (zh) | shell脚本打印日志方法和装置、电子设备和存储介质 | |
CN117632312B (zh) | 数据交互方法及相关装置 | |
CN109739797B (zh) | 一种电子设备 | |
CN116737513B (zh) | 一种计算机硬件信息获取方法、系统及计算机设备 | |
CN110262993B (zh) | 输入信息的读取方法及电路、存储介质、电子装置 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |