CN109144722A - 一种多应用高效共用fpga资源的管理系统及方法 - Google Patents

一种多应用高效共用fpga资源的管理系统及方法 Download PDF

Info

Publication number
CN109144722A
CN109144722A CN201810801363.3A CN201810801363A CN109144722A CN 109144722 A CN109144722 A CN 109144722A CN 201810801363 A CN201810801363 A CN 201810801363A CN 109144722 A CN109144722 A CN 109144722A
Authority
CN
China
Prior art keywords
fpga
resource
server
application circuit
application
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
CN201810801363.3A
Other languages
English (en)
Other versions
CN109144722B (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.)
Suzhou Yanou Technology Co.,Ltd.
Original Assignee
Shanghai Research Gull Mdt Infotech 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 Shanghai Research Gull Mdt Infotech Ltd filed Critical Shanghai Research Gull Mdt Infotech Ltd
Priority to CN201810801363.3A priority Critical patent/CN109144722B/zh
Publication of CN109144722A publication Critical patent/CN109144722A/zh
Application granted granted Critical
Publication of CN109144722B publication Critical patent/CN109144722B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5005Allocation of resources, e.g. of the central processing unit [CPU] to service a request
    • G06F9/5027Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F15/78Architectures of general purpose stored program computers comprising a single central processing unit
    • G06F15/7867Architectures of general purpose stored program computers comprising a single central processing unit with reconfigurable architecture
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements 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/46Multiprogramming arrangements
    • G06F9/50Allocation of resources, e.g. of the central processing unit [CPU]
    • G06F9/5061Partitioning or combining of resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F2015/761Indexing scheme relating to architectures of general purpose stored programme computers
    • G06F2015/763ASIC
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F15/00Digital computers in general; Data processing equipment in general
    • G06F15/76Architectures of general purpose stored program computers
    • G06F2015/761Indexing scheme relating to architectures of general purpose stored programme computers
    • G06F2015/765Cache
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/5021Priority

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Stored Programmes (AREA)

Abstract

本发明提供的多应用高效共用FPGA资源的管理系统,包括主服务器、编译服务器和从服务器集群,主服务器接收租户的应用电路请求,主服务器根据当前从服务器集群中各个FPGA实例资源的使用状态采用调度算法动态调度、选择目标FPGA实例来实现应用电路;主服务器获取所述比特流配置文件,将比特流配置文件写入目标FPGA实例,并向租户返回实现请求的应用电路的目标FPGA实例的访问信息;从服务器集群包含多个带有FPGA的服务器实例,应用电路被下载到FPGA实例中运行。采用主服务器对从服务集群上的FPGA实例资源进行调度,实现多应用高效共享FPGA资源,达到提高FPGA片上资源利用率、降低FPGA使用成本的目的。

Description

一种多应用高效共用FPGA资源的管理系统及方法
技术领域
本发明涉及计算机技术领域,具体涉及一种多应用高效共用FPGA资源的管理系统及方法。
背景技术
随着计算机科学技术的发展和应用领域的不断拓展,需要更多具有高性能、低功耗属性的计算设备来满足日益增长的运算需求。通用处理器(CPU)经历了几十年的发展,随着摩尔定律已接近极限,能效比提升的空间已经相当有限。为了实现进一步的性能提升,为产业核心应用(人工智能、大数据处理等)定制处理器已成必要。由此,FPGA芯片技术逐渐进入大众视野,FPGA具有硬件可重构、低功耗、低延时的特性,在高性能计算和低功耗设备上都取得了广泛应用,在服务器的硬件加速领域扮演着重要角色。
在现有技术中,大多服务厂商采用在传统服务器上安装FPGA板卡,并提供预先设计好的基础功能电路(SHELL),主要实现通信、内存控制等,为加速器开发者提供开发平台。然而,这些服务厂商以FPGA板卡为单位向租户分配FPGA实例(分配带有FPGA板卡的虚拟或实体服务器)资源,这种方式难以充分、高效地使用FPGA资源。其原因是当租户的应用电路(IP:Intellectual Property)所需资源小于单个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实例;
向租户返回实现请求的应用电路的目标FPGA实例的访问信息。
可选地,所述调度算法采用按资源使用率优先考虑方法,按资源使用率优先考虑方法是优先考虑将多个应用电路合并到一个FPGA实例。
可选地,所述调度算法采用性能优先考虑的方法,性能优先考虑的方法优先考虑每个应用电路需要的FPGA通信带宽大小,在满足每个应用电路通信带宽需求的情况下,再考虑将多个应用电路合并到一个FPGA实例。
可选地,所述访问信息至少包括从服务器地址和端口。
第三方面,本发明实施例提供的一种多应用高效共用FPGA资源的方法,用于多应用高效共用FPGA资源的管理系统的编译服务器,包括以下步骤,
编译服务器判断缓存中是否存在已有编译好的相同目标应用电路;
若否,则编译目标应用电路生成比特流配置文件;
将所述比特流配置文件发送给主服务器;
若是,则从缓存中调取比特流配置文件发送给主服务器。
本发明的有益效果:
本发明实施例提供的一种多应用高效共用FPGA资源的管理系统,采用主服务器对从服务集群上的FPGA实例资源进行调度,实现多应用高效共享FPGA资源,从而达到提高FPGA片上资源利用率、降低FPGA使用成本的目的。另外,本发明实施例所提出的将多应用整合,再利用编译服务器或编译服务器集群编译的方式,可以提高编译电路的缓存使用率。缓存过的电路无需经过二次编译就可获得比特流配置文件,从而提高应用电路的部署速度。由于缓存信息可以在大量租户请求之间共享,系统所处理的应用电路越多,缓存的效果越明显。
本发明实施例提供的一种多应用高效共用FPGA资源的管理方法,采用主服务器对从服务集群上的FPGA实例资源进行调度,实现多应用高效共享FPGA资源,从而达到提高FPGA片上资源利用率、降低FPGA使用成本的目的。另外,本发明实施例所提出的将多应用整合,再利用编译服务器或编译服务器集群编译的方式,可以提高编译电路的缓存使用率。缓存过的电路无需经过二次编译就可获得比特流配置文件,从而提高应用电路的部署速度。
附图说明
为了更清楚地说明本发明具体实施方式或现有技术中的技术方案,下面将对具体实施方式或现有技术描述中所需要使用的附图作简单地介绍。在所有附图中,类似的元件或部分一般由类似的附图标记标识。附图中,各元件或部分并不一定按照实际的比例绘制。
图1示出了本发明所提供的一种多应用高效共用FPGA资源的管理系统的第一实施例的原理框图;
图2示出了本发明所提供的一种多应用高效共用FPGA资源的管理系统在由租户A和租户B共享使用场景下的原理框图;
图3示出了本发明所提供的一种多应用高效共用FPGA资源的管理方法的第一实施例的流程图。
具体实施方式
下面将结合附图对本发明技术方案的实施例进行详细的描述。以下实施例仅用于更加清楚地说明本发明的技术方案,因此只是作为示例,而不能以此来限制本发明的保护范围。
需要注意的是,除非另有说明,本申请使用的技术术语或者科学术语应当为本发明所属领域技术人员所理解的通常意义。
如图1所示,示出了本发明所提供的一种多应用高效共用FPGA资源的管理系统第一实施例的原理框图,该系统包括主服务器、编译服务器和从服务器集群,所述主服务器被配置为接收租户的应用电路请求,主服务器存储有从服务器集群中各个FPGA实例资源的实时使用状态,并根据当前从服务器集群中各个FPGA实例资源的使用状态采用调度算法动态调度、选择目标FPGA实例来实现应用电路;将请求的应用电路、目标FPGA实例上既存的应用电路和目标FPGA实例的基础功能电路合并为一个新的目标应用电路,将新的目标应用电路发送到编译服务器请求编译;编译服务器被配置为编译目标应用电路生成比特流配置文件,将比特流配置文件发送给主服务器;主服务器被配置为接收并获取所述比特流配置文件,将比特流配置文件写入目标FPGA实例,并向租户返回实现请求的应用电路的目标FPGA实例的访问信息;访问信息至少包括从服务器地址和端口,从服务器集群被配置为包含多个带有FPGA的服务器实例,应用电路被下载到FPGA实例中运行。
租户的应用电路请求的具体形式是电路设计源文件或加密后的电路设计文件。由于主服务器存储有从服务器集群中各个FPGA实例资源的实时使用状态,主服务器中可以实时在租户的新的应用电路实现请求到来时正确查找并分配FPGA实例资源。主服务器根据不同租户的不同需求,采用不同的调度算法。例如,调度算法采用按资源使用率优先考虑方法,算法以使用最少的FPGA实例资源为目的,按资源使用率优先考虑方法是优先考虑尽量将多个应用电路合并到一个FPGA实例,此时同一FPGA上的多个应用电路可能由于竞争通信带宽而降低性能。而调度算法采用性能优先考虑的方法,性能优先考虑的方法会优先考虑每个应用电路需要的FPGA通信带宽大小,性能优先考虑的方法以确保应用电路获取足够FPGA实例资源和通信带宽为目的,在此基础上尽量将多个应用电路合并到一个FPGA实例,此时每个应用电路都可获得最佳性能,但可能比资源使用率优先算法占用更多的FPGA实例。主服务器在确定实现请求应用电路的目标FPGA实例后,将请求的应用电路、目标FPGA实例上既存的应用电路(如果有)、以及目标FPGA实例的基础功能电路(SHELL)合并为一个新的FPGA项目,然后调用编译服务器编译该项目并获取比特流(Bitstream)配置文件,编译服务器被配置为编译目标电路生成比特流配置文件的具体方法包括:判断缓存中是否存在已有编译好的相同目标应用电路;若否,则编译目标应用电路生成比特流配置文件;将所述比特流配置文件发送给主服务器;若是,则从缓存中调取比特流配置文件发送给主服务器。FPGA的编译过程通常计算量比较大且耗时长,可根据实际情况,把编译服务器部署在主服务器上,也可以根据需要部署编译服务器集群执行编译过程。最后主服务器将比特流配置文件加载到目标FPGA之中完成应用电路的部署。在应用电路的部署完成后,从服务器(目标FPGA实例)为租户分配访问该应用电路的权限和接口,并将FPGA访问信息(从服务器地址、端口等)返回给租户使用。
以下采用从服务器集群上的FPGA实例由租户A和租户B共享使用为场景对上述实施例的系统进行说明。如图2所示,FPGA1实例中实现了来自租户A的一个AES IP和来自租户B的一个K-Means IP。如果按照现有的技术以FPGA板卡为单位向租户分配FPGA实例的方式,实现两个租户的两个应用电路需要两台FPGA实例,采用本发明实施例描述的方法后只需要一台FPGA实例,因此提高了FPGA资源的利用率。并且,本发明实施例中主服务器的调度过程可以将多个应用电路合并到一个FPGA上,同时不影响应用电路的性能。例如用于加密处理的AES IP的特点是实现面积小、但所需通信带宽大;而用于人工智能算法的K-Means IP的特点是实现面积大、但所需通信带宽小。通过将这两种应用电路调度到同一FPGA实例上实现,可以在提高FPGA使用率的同时不影响它们的性能。
本发明实施例中主服务器的调度过程可以通过配置,应用多种调度策略。如图2所示的FPGA2,当前已经实现了一个用于加密的AES IP和一个用于数据排序的Sort IP。当租户A向主服务器请求再实现一个Sort IP时,根据调度算法的不同,可以有两种调度方案。例如资源使用率优先时,新的Sort IP应该被调度到FPGA2上的剩余空间,从而无需开启新的FPGA实例。而性能优先时,主服务器会检测到AES IP和Sort IP都对通信带宽有较高要求,在FPGA2上再实现一个Sort IP会导致FPGA2上的通信带宽资源不足,从而影响应用电路的性能,因此新的Sort IP应该被调度到未使用的FPGA3上。
本发明实施例中编译服务器在第一次编译AES IP和Sort IP之后,会将编译后的比特流配置文件进行缓存。在第二次处理AES IP或Sort IP的编译请求时,可以直接从缓存调取比特流配置文件,而不需要二次编译,从而缩短了应用电路的部署时间。
本发明实施例提供的一种多应用高效共用FPGA资源的管理系统,采用主服务器对从服务集群上的FPGA实例资源进行调度,实现多应用高效共享FPGA资源,从而达到提高FPGA片上资源利用率、降低FPGA使用成本的目的。另外,本发明实施例所提出的将多应用整合,再利用编译服务器或编译服务器集群编译的方式,可以提高编译电路的缓存使用率。缓存过的电路无需经过二次编译就可获得比特流配置文件,从而提高应用电路的部署速度。由于缓存信息可以在大量租户请求之间共享,系统所处理的应用电路越多,缓存的效果越明显。
如图3所示,示出了本发明所提供的一种多应用高效共用FPGA资源的管理方法的第一实施例的流程图,该方法包括以下步骤,
S1:主服务器接收租户的应用电路请求。租户的应用电路请求的具体形式是电路设计源文件或加密后的电路设计文件。
S2:主服务器存储有从服务器集群中各个FPGA实例资源的实时使用状态,并根据当前从服务器集群中各个FPGA实例资源使用状态采用调度算法动态调度、选择目标FPGA实例来实现应用电路。
具体地,调度算法采用按资源使用率优先考虑方法,按资源使用率优先考虑方法是优先考虑将多个应用电路合并到一个FPGA实例。调度算法采用性能优先考虑的方法,性能优先考虑的方法优先考虑每个应用电路需要的FPGA通信带宽大小,在满足每个应用电路通信带宽需求的情况下,再考虑将多个应用电路合并到一个FPGA实例。
S3:主服务器将请求的应用电路、目标FPGA实例上既存的应用电路和目标FPGA实例的基础功能电路合并为一个新的目标应用电路。
S4:并将新的目标应用电路发送到编译服务器请求编译。
编译服务器编译的过程包括以下步骤:
编译服务器判断缓存中是否存在已有编译好的相同目标应用电路;
若否,则编译目标应用电路生成比特流配置文件;
将所述比特流配置文件发送给主服务器;
若是,则从缓存中调取比特流配置文件发送给主服务器。
S5:主服务器接收并获取编译服务器发送的比特流配置文件,将所述比特流配置文件写入目标FPGA实例。
S6:主服务器向租户返回实现请求的应用电路的目标FPGA实例的访问信息。访问信息至少包括从服务器地址和端口等。
本发明实施例提供的一种多应用高效共用FPGA资源的方法,采用主服务器对从服务集群上的FPGA实例资源进行调度,实现多应用高效共享FPGA资源,从而达到提高FPGA片上资源利用率、降低FPGA使用成本的目的。另外,本发明实施例所提出的将多应用整合,再利用编译服务器或编译服务器集群编译的方式,可以提高编译电路的缓存使用率。缓存过的电路无需经过二次编译就可获得比特流配置文件,从而提高应用电路的部署速度。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围,其均应涵盖在本发明的权利要求和说明书的范围当中。

Claims (10)

1.一种多应用高效共用FPGA资源的管理系统,其特征在于,包括主服务器、编译服务器和从服务器集群,所述主服务器被配置为接收租户的应用电路请求,主服务器存储有从服务器集群中各个FPGA实例资源的实时使用状态,并根据当前从服务器集群中各个FPGA实例资源的使用状态采用调度算法动态调度、选择目标FPGA实例来实现应用电路;将请求的应用电路、目标FPGA实例上既存的应用电路和目标FPGA实例的基础功能电路合并为一个新的目标应用电路,将新的目标应用电路发送到编译服务器请求编译;所述编译服务器被配置为编译目标应用电路生成比特流配置文件,将比特流配置文件发送给主服务器;所述主服务器被配置为接收并获取所述比特流配置文件,将所述比特流配置文件写入目标FPGA实例,并向租户返回实现请求的应用电路的目标FPGA实例的访问信息;所述从服务器集群被配置为包含多个带有FPGA的服务器实例,应用电路被下载到FPGA实例中运行。
2.如权利要求1所述的多应用高效共用FPGA资源的管理系统,其特征在于,所述编译服务器被配置为编译目标电路生成比特流配置文件的具体方法包括:判断缓存中是否存在已有编译好的相同目标应用电路;若否,则编译目标应用电路生成比特流配置文件;将所述比特流配置文件发送给主服务器;若是,则从缓存中调取比特流配置文件发送给主服务器。
3.如权利要求1所述的多应用高效共用FPGA资源的管理系统,其特征在于,所述调度算法采用按资源使用率优先考虑方法,按资源使用率优先考虑方法是优先考虑将多个应用电路合并到一个FPGA实例。
4.如权利要求1所述的多应用高效共用FPGA资源的管理系统,其特征在于,所述调度算法采用性能优先考虑的方法,性能优先考虑的方法优先考虑每个应用电路需要的FPGA通信带宽大小,在满足每个应用电路通信带宽需求的情况下,再考虑将多个应用电路合并到一个FPGA实例。
5.如权利要求1-4之一所述的多应用高效共用FPGA资源的管理系统,其特征在于,所述访问信息至少包括从服务器地址和端口。
6.一种多应用高效共用FPGA资源的管理方法,用于多应用高效共用FPGA资源的管理系统的主服务器,其特征在于,包括以下步骤,
接收租户的应用电路请求;
存储有从服务器集群中各个FPGA实例资源的实时使用状态,并根据当前从服务器集群中各个FPGA实例资源使用状态采用调度算法动态调度、选择目标FPGA实例来实现应用电路;
将请求的应用电路、目标FPGA实例上既存的应用电路和目标FPGA实例的基础功能电路合并为一个新的目标应用电路;
将新的目标应用电路发送到编译服务器请求编译;
接收并获取编译服务器发送的比特流配置文件,将所述比特流配置文件写入目标FPGA实例;
向租户返回实现请求的应用电路的目标FPGA实例的访问信息。
7.如权利要求6所述的多应用高效共用FPGA资源的管理方法,其特征在于,所述调度算法采用按资源使用率优先考虑方法,按资源使用率优先考虑方法是优先考虑将多个应用电路合并到一个FPGA实例。
8.如权利要求6所述的多应用高效共用FPGA资源的管理方法,其特征在于,所述调度算法采用性能优先考虑的方法,性能优先考虑的方法优先考虑每个应用电路需要的FPGA通信带宽大小,在满足每个应用电路通信带宽需求的情况下,再考虑将多个应用电路合并到一个FPGA实例。
9.如权利要求6所述的多应用高效共用FPGA资源的管理方法,其特征在于,所述访问信息至少包括从服务器地址和端口。
10.一种多应用高效共用FPGA资源的管理方法,用于多应用高效共用FPGA资源的管理系统的编译服务器,其特征在于,包括以下步骤,
判断缓存中是否存在已有编译好的相同目标应用电路;
若否,则编译目标应用电路生成比特流配置文件;
将所述比特流配置文件发送给主服务器;
若是,则从缓存中调取比特流配置文件发送给主服务器。
CN201810801363.3A 2018-07-20 2018-07-20 一种多应用高效共用fpga资源的管理系统及方法 Active CN109144722B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810801363.3A CN109144722B (zh) 2018-07-20 2018-07-20 一种多应用高效共用fpga资源的管理系统及方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201810801363.3A CN109144722B (zh) 2018-07-20 2018-07-20 一种多应用高效共用fpga资源的管理系统及方法

Publications (2)

Publication Number Publication Date
CN109144722A true CN109144722A (zh) 2019-01-04
CN109144722B CN109144722B (zh) 2020-11-24

Family

ID=64801218

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201810801363.3A Active CN109144722B (zh) 2018-07-20 2018-07-20 一种多应用高效共用fpga资源的管理系统及方法

Country Status (1)

Country Link
CN (1) CN109144722B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110597627A (zh) * 2019-08-24 2019-12-20 中国电子科技集团公司第十五研究所 基于虚拟fpga的数据库运算加速装置及加速方法
CN115550451A (zh) * 2022-09-22 2022-12-30 湖南泛联新安信息科技有限公司 基于交换架构的多fpga仿真验证云平台调度管理方法和系统

Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102298344A (zh) * 2011-05-05 2011-12-28 杭州电子科技大学 一种基于fpga动态部分可重构技术的局部热点缓和系统
US8166366B1 (en) * 2007-10-22 2012-04-24 Xilinx, Inc. Partial configuration of programmable circuitry with validation
US20170195173A1 (en) * 2015-12-31 2017-07-06 Amazon Technologies, Inc. Fpga-enabled compute instances
CN107273621A (zh) * 2017-06-21 2017-10-20 上海研鸥信息科技有限公司 一种fpga应用电路的可移植方法
CN107710150A (zh) * 2015-06-15 2018-02-16 高通股份有限公司 从包含层次子例程信息的中间代码产生目标代码
CN107729151A (zh) * 2017-10-19 2018-02-23 济南浪潮高新科技投资发展有限公司 一种集群管理fpga资源的方法
US20180091484A1 (en) * 2016-09-29 2018-03-29 Amazon Technologies, Inc. Logic repository service using encrypted configuration data
US20180088992A1 (en) * 2016-09-28 2018-03-29 Amazon Technologies, Inc. Intermediate host integrated circuit between virtual machine instance and customer programmable logic
US20180095795A1 (en) * 2016-09-30 2018-04-05 Nimbix, Inc. Method and system for preemptible coprocessing
WO2018075696A1 (en) * 2016-10-18 2018-04-26 Src Labs, Llc Fpga platform as a service (paas)
US20180139110A1 (en) * 2016-11-17 2018-05-17 Amazon Technologies, Inc. Networked programmable logic service provider

Patent Citations (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8166366B1 (en) * 2007-10-22 2012-04-24 Xilinx, Inc. Partial configuration of programmable circuitry with validation
CN102298344A (zh) * 2011-05-05 2011-12-28 杭州电子科技大学 一种基于fpga动态部分可重构技术的局部热点缓和系统
CN107710150A (zh) * 2015-06-15 2018-02-16 高通股份有限公司 从包含层次子例程信息的中间代码产生目标代码
US20170195173A1 (en) * 2015-12-31 2017-07-06 Amazon Technologies, Inc. Fpga-enabled compute instances
US20180088992A1 (en) * 2016-09-28 2018-03-29 Amazon Technologies, Inc. Intermediate host integrated circuit between virtual machine instance and customer programmable logic
US20180091484A1 (en) * 2016-09-29 2018-03-29 Amazon Technologies, Inc. Logic repository service using encrypted configuration data
US20180095795A1 (en) * 2016-09-30 2018-04-05 Nimbix, Inc. Method and system for preemptible coprocessing
WO2018075696A1 (en) * 2016-10-18 2018-04-26 Src Labs, Llc Fpga platform as a service (paas)
US20180139110A1 (en) * 2016-11-17 2018-05-17 Amazon Technologies, Inc. Networked programmable logic service provider
CN107273621A (zh) * 2017-06-21 2017-10-20 上海研鸥信息科技有限公司 一种fpga应用电路的可移植方法
CN107729151A (zh) * 2017-10-19 2018-02-23 济南浪潮高新科技投资发展有限公司 一种集群管理fpga资源的方法

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
YAMUNA RAJASEKHAR,RAHUL R SHARMA,RON SASS: "An Extensible and Portable Tool Suite for Managing Multi-Node FPGA Systems", 《2012 IEEE 20TH INTERNATIONAL SYMPOSIUM ON FIELD-PROGRAMMABLE CUSTOM COMPUTING MACHINES》 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN110597627A (zh) * 2019-08-24 2019-12-20 中国电子科技集团公司第十五研究所 基于虚拟fpga的数据库运算加速装置及加速方法
CN110597627B (zh) * 2019-08-24 2023-07-14 中国电子科技集团公司第十五研究所 基于虚拟fpga的数据库运算加速装置及加速方法
CN115550451A (zh) * 2022-09-22 2022-12-30 湖南泛联新安信息科技有限公司 基于交换架构的多fpga仿真验证云平台调度管理方法和系统

Also Published As

Publication number Publication date
CN109144722B (zh) 2020-11-24

Similar Documents

Publication Publication Date Title
US20210271517A1 (en) Resource selection based in part on workload
Qiu et al. Loop parallelism maximization for multimedia data processing in mobile vehicular clouds
Augonnet et al. Data-aware task scheduling on multi-accelerator based platforms
CN114253706A (zh) 用于协调边缘平台的方法和装置
CN101366004A (zh) 用于带有专用线程管理的多核处理的方法和设备
CN103793255B (zh) 可配置的多主模式多os内核实时操作系统架构的启动方法
CN112328378A (zh) 任务调度方法、计算机设备及存储介质
CN106598731A (zh) 基于异构多核架构的运行时系统及其控制方法
CN107436798A (zh) 一种基于numa节点的进程访问方法及装置
US10552369B1 (en) Virtualized multicore systems with extended instruction heterogeneity
CN109144722A (zh) 一种多应用高效共用fpga资源的管理系统及方法
Kapadia et al. VISION: a framework for voltage island aware synthesis of interconnection networks-on-chip
KR20140001970A (ko) 결합된 cpu/gpu 아키텍처 시스템에서의 디바이스의 발견 및 토폴로지 보고
CN103257900B (zh) 减少cpu占用的多处理器上实时任务集资源预留方法
Li et al. Energy-aware scheduling on multiprocessor platforms
CN109284192A (zh) 参数配置方法及电子设备
CN101290592B (zh) 一种mpsoc上多道程序共享spm的实现方法
López-Ortiz et al. Paging for multi-core shared caches
Wang et al. Exploiting dark cores for performance optimization via patterning for many-core chips in the dark silicon era
Asensio et al. On the optimality of Concurrent Container Clusters Scheduling over heterogeneous smart environments
Litzinger et al. Code generation for energy‐efficient execution of dynamic streaming task graphs on parallel and heterogeneous platforms
TW201023046A (en) Delegated virtualization across physical partitions of a multi-core processor (MCP)
Cheng et al. Many-core real-time task scheduling with scratchpad memory
Tianyang et al. A Survey: FPGA‐Based Dynamic Scheduling of Hardware Tasks
Antunes et al. Partitioning and mapping on NoC-based MPSoC: an energy consumption saving approach

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
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20230804

Address after: Building 1604, Tongji Science and Technology Plaza, No. 2 Hushan Road, Changshu High tech Industrial Development Zone, Suzhou City, Jiangsu Province, 215500

Patentee after: Suzhou Yanou Technology Co.,Ltd.

Address before: Room 211-651, No. 15, Lane 110, Guyuan Road, Hongkou District, Shanghai, 200080

Patentee before: SHANGHAI YANOU INFORMATION TECHNOLOGY CO.,LTD.