CN105824706B - 一种配置加速器的方法和装置 - Google Patents

一种配置加速器的方法和装置 Download PDF

Info

Publication number
CN105824706B
CN105824706B CN201610227605.3A CN201610227605A CN105824706B CN 105824706 B CN105824706 B CN 105824706B CN 201610227605 A CN201610227605 A CN 201610227605A CN 105824706 B CN105824706 B CN 105824706B
Authority
CN
China
Prior art keywords
accelerator
service
bare
target
server
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
Application number
CN201610227605.3A
Other languages
English (en)
Other versions
CN105824706A (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
Publication of CN105824706A publication Critical patent/CN105824706A/zh
Priority to PCT/CN2016/112143 priority Critical patent/WO2017114361A1/zh
Priority to EP16881150.3A priority patent/EP3385835B1/en
Priority to US16/025,569 priority patent/US10698699B2/en
Application granted granted Critical
Publication of CN105824706B publication Critical patent/CN105824706B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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/5011Allocation 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
    • 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/44Arrangements for executing specific programs
    • G06F9/445Program loading or initiating
    • 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
    • G06F9/5044Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals considering hardware capabilities
    • 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
    • G06F15/7871Reconfiguration support, e.g. configuration loading, configuration switching, or hardware OS
    • 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/5011Allocation 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/5022Mechanisms to release resources
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/503Resource availability
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2209/00Indexing scheme relating to G06F9/00
    • G06F2209/50Indexing scheme relating to G06F9/50
    • G06F2209/509Offload
    • 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/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping

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)
  • Information Transfer Between Computers (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

本发明公开了一种配置加速器的方法和装置,涉及计算机技术领域,用以提高加速器资源的利用率。该方法应用于包含至少一个裸加速器的服务器中,其中,所述裸加速器是指为加速器硬件加载了基本逻辑功能之后生成的加速器,所述基本逻辑功能包括通信接口功能和加载功能;所述方法包括:所述服务器确定目标业务类型和目标裸加速器;所述服务器确定所述目标业务类型对应的业务逻辑功能;所述服务器为所述目标裸加速器加载所述目标业务类型对应的业务逻辑功能,生成目标业务加速器,其中,所述目标业务加速器能够为具有所述目标业务类型的业务提供加速服务。

Description

一种配置加速器的方法和装置
技术领域
本发明涉及计算机技术领域,尤其涉及一种配置加速器的方法和装置。
背景技术
加速器是信息技术(英文全称:information technology,英文简称:IT)、通信技术(英文全称:communication technology,英文简称:CT)和信息与通信技术(英文全称:information and communications technology,英文简称:ICT)中性能提升的关键器件,其能够对业务进行加速。常用的加速器硬件包括:现场可编程门阵列(英文全称:field-programmable gate array,英文简称:FPGA)、图形处理器(英文全称:graphic processingunit,英文简称:GPU)、数字信号处理(英文全称:digital signal process,英文简称:DSP)、集成电路(英文全称:application specific integrated circuit,英文简称:ASIC)等。只有当加速器硬件上加载了某一业务类型(例如视频类型等)对应的业务逻辑功能(具体可通过加载一个业务对应的二进制文件,也称bin文件)之后,才能为具有该业务类型的业务提供加速服务。
目前,一般地,服务器中所设置的加速器是已经加载有某业务对应的业务逻辑功能之后所生成的加速器,并且,一个加速器一旦设置在服务器中,其始终只能为一种业务提供加速服务。由于业务类型多种多样,利用现有技术中的配置加速器的方法,为了给每种业务类型的业务提供加速服务,需要在服务器中设置每种业务类型对应的加速器,然而,服务器并非时时刻刻都需要为每种业务提供加速服务,因此同一时刻会有部分加速器会处于空闲状态,这会使得加速器资源的利用率较低。
发明内容
本发明的实施例提供一种配置加速器的方法和装置,用以提高加速器资源的利用率。
为达到上述目的,本发明的实施例采用如下技术方案:
第一方面,提供一种配置加速器的方法,应用于包含至少一个裸加速器的服务器中,其中,所述裸加速器是指为加速器硬件加载了基本逻辑功能之后生成的加速器,所述基本逻辑功能包括通信接口功能和加载功能;所述方法包括:
所述服务器确定目标业务类型和目标裸加速器;
所述服务器确定所述目标业务类型对应的业务逻辑功能;
所述服务器为所述目标裸加速器加载所述目标业务类型对应的业务逻辑功能,生成目标业务加速器,其中,所述目标业务加速器能够为具有所述目标业务类型的业务提供加速服务。
本发明实施例提供的配置加速器的方法,通过确定目标业务类型和目标裸加速器,从而为目标裸加速器加载目标业务类型对应的业务逻辑功能,生成业务加速器。也就是说,本发明实施例中,当需要为某种业务提供加速服务时,才为该业务配置业务加速器,即按需设置,相比现有技术中预先设置好为每种业务提供加速服务的加速器的技术方案相比,能够提高加速器资源的利用率。
第二方面,提供一种配置加速器的装置,应用于包含至少一个裸加速器的服务器中,其中,所述裸加速器是指为加速器硬件加载了基本逻辑功能之后生成的加速器,所述基本逻辑功能包括通信接口功能和加载功能;所述装置包括:
确定单元,用于确定目标业务类型和目标裸加速器,以及确定所述目标业务类型对应的业务逻辑功能;
加载单元,用于为所述目标裸加速器加载所述目标业务类型对应的业务逻辑功能,生成目标业务加速器,其中,所述目标业务加速器能够为具有所述目标业务类型的业务提供加速服务。
由于本发明实施例中的配置加速器的装置可以用于执行上述第一方面中所述的配置加速器的方法,因此其所能获得的技术效果可以参考上述第一方面中的技术效果,此处不再赘述。
基于上述第一方面,在一种可选的实现方式中,所述服务器确定目标业务类型和目标裸加速器,可以包括:所述服务器接收用户设备发送的目标业务类型,若所述服务器中没有为具有所述目标业务类型的业务提供加速服务的加速器,则所述服务器从所述至少一个裸加速器中选择一个裸加速器作为目标裸加速器。
相应地,基于上述第二方面,在一种可选的实现方式中,所述确定单元具体用于:接收用户设备发送的目标业务类型,若所述服务器中没有为具有所述目标业务类型的业务提供加速服务的加速器,则从所述至少一个裸加速器中选择一个裸加速器作为目标裸加速器。
在该可选的实现方式中,服务器自主选择目标裸加速器,具体实现时,服务器可以根据一定的规则确定目标裸加速器,本发明实施例对该规则不进行限定。
基于上述第一方面,另一种可选的实现方式中,所述服务器确定目标业务类型和目标裸加速器,可以包括:所述服务器接收用户设备发送的目标业务类型和目标裸加速器的标识。
相应地,基于上述第二方面,在一种可选的实现方式中,所述确定单元具体用于:接收用户设备发送的目标业务类型和目标裸加速器的标识。
该可选的实现方式中,由用户指定目标裸加速器。这样,通过用户的参与,能够提高用户的体验效果。
基于上述第一方面或第一方面的任一种可选的实现方式,可选的,在所述服务器为所述目标裸加速器加载所述待加载的业务逻辑功能,生成目标业务加速器之后,所述方法还可以包括:所述服务器卸载所述目标业务加速器中所加载的所述目标业务类型对应的业务逻辑功能,生成裸加速器。
相应地,基于上述第二方面或第二方面的任一种可选的实现方式,可选的,该装置还可以包括:卸载单元,用于卸载所述目标业务加速器中所加载的所述目标业务类型对应的业务逻辑功能,生成裸加速器
该可选的实现方式中,通过卸载业务加速器中所加载的业务逻辑功能,使得该业务加速器生成裸加速器,进一步地,服务器还可以利用第一方面提供的方法,为该裸加速器加载其他业务类型对应的业务逻辑功能,从而使得一个裸加速器可以在不同时刻为具有不同类型的业务提供加速服务,也就是说,一个物理设备可以配置成支撑不同业务的加速引擎,从而满足对不同类型的业务进行加速的需求,因此具有很大的灵活性;另外,能够利用较少的加速器硬件,为较多类型的业务提供加速服务,从而节省硬件资源。并且,在加速器硬件个数确定的前提下,能够使得每个加速器硬件得到充分的利用,从而极大的提高了资源的利用率。
基于上述第一方面或第一方面的任一种可选的实现方式,可选的,所述方法还可以包括:所述服务器更新裸加速器的标识构成的集合和业务加速器的标识构成的集合中的至少一种。
相应地,该装置还可以包括:更新单元,用于更新裸加速器的标识构成的集合和业务加速器的标识构成的集合中的至少一种。
具体的,服务器(或更新单元)可以周期性地或触发性地更新裸加速器的标识构成的集合和业务加速器的标识构成的集合中的至少一种。例如,每个预设时间段更新一次裸加速器的标识构成的集合和业务加速器的标识构成的集合中的至少一种;或者,当裸加速器的标识构成的集合和业务加速器的标识构成的集合中的至少一种中的元素发生变化时,即更新。
基于上述第一方面或第一方面的任一种可选的实现方式,可选的,所述方法还可以包括:所述服务器向用户设备发送裸加速器的标识构成的集合和业务加速器的标识构成的集合中的至少一种。
相应地,基于上述第二方面或第二方面的任一种可选的实现方式,可选的,该装置还可以包括:发送单元,用于向用户设备发送裸加速器的标识构成的集合和业务加速器的标识构成的集合中的至少一种。
在该可选的实现方式中,用户设备在接收到裸加速器的标识构成的集合和业务加速器的标识构成的集合之后,可以显示裸加速器的标识构成的集合和业务加速器的标识构成的集合,从而使得用户可以根据用户设备上所显示的内容指定目标裸加速器或目标业务加速器。
基于上述第一方面或第一方面的任一种可选的实现方式,可选的,所述方法还可以包括:所述服务器显示裸加速器的标识构成的集合和业务加速器的标识构成的集合中的至少一种。
基于上述第二方面或第二方面的任一种可选的实现方式,可选的,该方法还可以包括:显示单元,用于显示裸加速器的标识构成的集合和业务加速器的标识构成的集合中的至少一种。
在该可选的实现方式中,服务器可以显示裸加速器的标识构成的集合和业务加速器的标识构成的集合,从而使得管理员可以根据服务器上所显示的内容指定目标裸加速器或目标业务加速器。
第三方面,提供一种配置加速器的装置,应用于包含至少一个裸加速器的服务器中,其中,所述裸加速器是指为加速器硬件加载了基本逻辑功能之后生成的加速器,所述基本逻辑功能包括通信接口功能和加载功能;所述装置包括:处理器、存储器和系统总线;所述存储器用于存储计算机执行指令,所述处理器与所述存储器通过所述系统总线连接,当所述装置运行时,所述处理器执行所述存储器存储的所述计算机执行指令,以使所述装置执行上述第一方面或者第一方面的任一种可选的实现方式提供的任一种配置加速器的方法。
第四方面,提供一种服务器,包括:上述第二方面或第三方面提供的任一种配置加速器的装置。
第五方面,提供一种可读介质,包括计算机执行指令,当服务器的处理器执行所述计算机执行指令时,所述服务器执行上述配置加速器的方法。
由于本发明实施例中的配置加速器的装置、服务器和可读介质均用于执行上述第一方面中所述的配置加速器的方法,因此其所能获得的技术效果可以参考上述第一方面中的技术效果,此处不再赘述。
附图说明
图1为本发明实施例提供的技术方案所适用的一种服务器的硬件架构示意图一;
图2为本发明实施例提供的技术方案所适用的一种服务器的硬件架构示意图二;
图3为本发明实施例提供的一种配置加速器的方法流程示意图;
图4为本发明实施例提供的技术方案所适用的一种服务器的硬件架构示意图三;
图5为本发明实施例提供的一种配置加速器的装置的结构示意图一;
图6为本发明实施例提供的一种配置加速器的装置的结构示意图二;
图7为本发明实施例提供的一种通信设备的结构示意图。
具体实施方式
首先,对本申请中所涉及的部分技术术语进行解释说明,以方便本领域技术人员对于本发明实施例的理解。
1)、加速器硬件、裸加速器、业务加速器
常见的加速器硬件包括:FPGA、GPU、DSP、ASIC等,加速器硬件可分为可编程加速器硬件和不可编程加速器硬件,优选的,本发明实施例中所涉及的加速器硬件可以是指可编程加速器硬件。
加载有基本逻辑功能和业务逻辑功能之后的加速器硬件才能为业务提供加速服务。其中,基本逻辑功能包括通信接口功能和加载功能等,业务逻辑功能是指能够使加速器硬件具有为某种业务提供加速服务的功能。
现有技术中,预先在服务器中设置的加速器是已经加载了基本逻辑功能和业务逻辑功能的加速器硬件,因此,现有技术中只需区分加速器硬件与加载了基本逻辑功能和业务逻辑功能的加速器硬件即可,具体的,将加载基本逻辑功能和业务逻辑功能之后的加速器硬件称为“加速器”。
在本发明实施例中,预先在服务器中设置的加速器可以是加速器硬件或者加载了基本逻辑功能的加速器硬件,因此,本发明实施例中,需要区分加速器硬件、加载了基本逻辑功能的加速器硬件、以及加载了业务逻辑功能的加速器硬件,具体的,将加载了基本逻辑功能的加速器硬件称为“裸加速器”,将加载了业务逻辑功能的加速器硬件称为“业务加速器”。
2)、服务器
本申请中的服务器可以是普通的服务器;也可以是云服务器,即云化场景下的服务器。其中,一个云服务器可以包括一个云化场景下的所有服务设备。云服务器包含的每个服务设备中均可以设置中央处理器(英文全称:central processing unit;英文简称:CPU),即云服务器包含的每个服务设备均可以作为独立的实体;云服务器中的一个或多个服务设备可以作为该云服务器的控制端,用于控制其他的服务设备。云服务器包含的任意两个服务设备在物理位置上可以相隔较远,例如,一个服务设备位于城市A,另一个服务设备位于城市B。
如图1所示,是本发明实施例提供的技术方案所适用的一种服务器的硬件架构示意图。图1所示的服务器包括:服务单板1、服务单板2和交换单板。其中,每个服务单板可以对应上述的一个服务设备,或者,多个服务单板也可以对应上述的一个服务设备,即多个服务单板集成在一个服务设备中。
服务单板1包含CPU(下文中称为主CPU)和网卡等,服务单板1中安装有云操作系统(英文全称:operating system,英文简称:OS)。示例的,主CPU与网卡之间通过专用外部设备互连(英文全称:peripheral component interconnect express,英文简称:PCIe)总线连接。
服务单板2包含CPU(下文中称为从CPU)以及加速器硬件1~加速器硬件N,其中,N是大于或等于2的整数;示例的,从CPU与加速器硬件1~加速器硬件N之间通过PCIe总线连接。
交换单板用于连接服务单板1与服务单板2,示例的,服务单板1中的网卡与交换单板之间通过总线(如10GE Base-KR总线)连接,服务单板2中的从CPU与交换单板之间通过总线(如10GE Base-KR总线)连接。
服务单板1作为控制端,服务单板1中的主CPU可基于例如云OS的方式实现对服务单板2中的加速器硬件1~加速器硬件N的控制。服务单板1可以称为主服务单板,即控制单板,服务单板2可以称为从服务单板,一个主服务单板可以通过一个或多个交换单板与多个从服务单板连接,一个从服务单板上可以设置一个或多个加速器硬件;不同的服务单板可以分布在同一物理区域或不同的物理区域中。
每个从CPU可以管理其所在的从服务单板上的多个加速器硬件、裸加速器以及业务加速器,例如,每个从CPU可以向其所在的服务单板上的多个加速器硬件加载业务逻辑功能等;又如,每个从CPU还可以为新生成的裸加速器或新生成的业务加速器分配标识,或删除已生成业务加速器的裸加速器的标识,或删除已生成裸加速器的业务加速器的标识等;再如,每个从CPU还可以向主CPU上报该从CPU所在的单板上的裸加速器的标识以及业务加速器的标识等。
主CPU可以控制每个从CPU管理其所在的服务单板上包含的多个加速器硬件、裸加速器以及业务加速器,例如,主CPU确定每个从CPU何时向哪个加速器硬件加载业务逻辑功能等;另外,主CPU还可以统计并更新每个从CPU上报的裸加速器的标识和业务加速器的标识等。
从逻辑功能上来看,主服务单板(例如图1中的服务单板1)可以称为云端,从服务单板(例如图1中的服务单板2)可以称为加速服务提供端,具体实现时,云端还可以连接一个或多个用户设备(英文全称:user equipment,英文简称:UE),图1中未示出。
对于用户而言,基于图1所示的硬件架构,能够实现以下功能:用户通过安装在UE上的客户端访问“云(即云端)”,类似于登陆百度云网站等;云端通过控制加速服务提供端为该UE所访问的业务提供加速服务。
需要说明的是,图1所示的硬件只是一种可选的实现方式,具体实现时,服务单板1和服务单板2可以做在一个单板上,即合并为一个服务单板。可以理解的是,若服务单板1与服务单板2合并为一个服务单板,则该服务器单板上可以不包含交换单板,并且可以只包含一个CPU,即不区分主CPU和从CPU;另外,还可以不区分云端和加速服务提供端,该服务单板还可以连接一个或多个UE。如图2所示,是本发明实施例提供的技术方案所适用的一种服务器的硬件架构示意图。图2所示的服务器包括服务单板,该服务单板包含CPU和加速器硬件1~加速器硬件N,其中,N是大于或等于2的整数;示例的,CPU与加速器硬件1~加速器硬件N之间通过PCIe总线连接。
下文中均以图1所示的云服务器的硬件架构为例对本发明实施例提供的技术方案进行示例性地说明。本领域普通技术人员应当能够从基于图1所示的示例,在不付出创造性的劳动下,得到基于图2所示的具体示例。
3)、多个,“/”
本申请中的“多个”是指两个或两个以上。例如,多个加速器是指两个或两个以上的加速器。本申请中的字符“/”表示“或”的关系,例如,A/B是指A或者B。
下面结合本发明实施例中的附图,对本发明实施例中的技术方案进行示例性描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图3所示,是本发明实施例提供的一种配置加速器的方法,应用于包含至少一个裸加速器的服务器中,其中,裸加速器是指为加速器硬件加载了基本逻辑功能之后生成的加速器,基本逻辑功能包括通信接口功能和加载功能,不包括“业务逻辑功能”,即加载了基本逻辑功能的加速器不具备处理业务的功能;该方法可以包括以下步骤S301-S303:
S301:服务器确定目标业务类型和目标裸加速器。
“业务类型”可以是各种媒体相关的业务的类型(如图片、音频、视频等业务类型),也可以是其他需要加速处理的业务类型;目标业务类型可以是服务器支持的任何一种业务类型。
服务器中可以预先设置一个或多个裸加速器。或者,服务器中可以预先设置一个或多个加速器硬件,然后,通过各个加速器硬件所在的服务单板上的CPU为各个加速器硬件加载基本逻辑功能,从而生成裸加速器;例如,基于图1,可以预先在服务单板2上设置加速器硬件1~加速器硬件N,然后,通过服务单板2上的从CPU分别为该加速器硬件1~加速器硬件N加载基本逻辑功能,从而生成裸加速器。目标裸加速器可以是服务器自身确定的一个裸加速器,也可以是用户指示的一个裸加速器。
其中,基本逻辑可以被加载到加速器硬件的特定位置上,用以实现通信接口(例如PCIe接口等)功能和加载功能等基本功能。当加速器硬件被加载了通信接口功能之后,其可以作为符合该通信接口协议的设备,并与CPU进行通信。当通信接口是PCIe通信接口时,为裸加速器上电后(即为裸加速器芯片上电后),该裸加速器在云OS中呈现为一个PCIe设备,其可以通过PCIe通信接口与其所在的服务单板上的CPU之间进行通信。
可选的,服务器通过各个加速器硬件所在的服务单板上的CPU为加速器硬件加载基本逻辑功能的过程可以包括:该CPU扫描其所属的服务单板上的加速器硬件,例如,基于图1,服务单板2上的从CPU扫描加速器硬件1~加速器硬件N,其中,只要一个设备/器件符合PCIe规范,该设备/器件所在的服务单板上的CPU运行其中的与基本输入输出系统(英文全称:basic input output system,英文简称:BIOS)相关的程序,即可扫描到该设备/器件;然后,通过所扫描到的加速器硬件对应的总线设备功能BDF号,确定该加速器硬件对应的驱动,其中,一个PCIe设备对应一个BDF号,一个BDF号对应一个驱动;接着,从CPU执行该驱动,以将该加速器硬件生成一个裸加速器,并为该裸加速器分配标识。其中,裸加速器的标识可以体现一些属性信息,例如BMx表示裸加速器x;本发明实施例对属性信息的所占的字段和类型等信息不进行限定。
服务器中的不同从服务单板中的裸加速器上所加载的基本逻辑功能可以相同也可以不同。例如,服务器中的一个从服务单板上的裸加速器与该从服务单板上的从CPU之间通过PCIe总线连接,该情况下,基本逻辑功能中的通信接口是指PCIe通信接口。本文中均以每个裸加速器上加载的基本逻辑功能相同,并且通信接口均是PCIe通信接口为例进行说明。
S302:服务器确定目标业务类型对应的业务逻辑功能。
服务器中可以预先存储有该服务器支持的一种或多种业务类型,以及每种业务类型对应的业务逻辑功能,优选的,服务器中预先存储该服务器支持的每种业务类型对应的业务逻辑功能。并且,服务器中所存储的业务类型对应的业务逻辑功能可以进行更新,例如,当服务器支持一种新业务时,可以将该新业务的业务类型对应的业务逻辑功能加载至该服务器中。
基于图1,业务逻辑功能可以存储在从服务单板的指定路径的文件夹中。
S303:服务器为目标裸加速器加载目标业务类型对应的业务逻辑功能,生成目标业务加速器,其中,目标业务加速器能够为具有目标业务类型的业务提供加速服务。
基于图1,步骤S301和步骤S302的执行主体可以是服务器中的主CPU,步骤S303的执行主体可以是服务器中的从CPU。基于图2,步骤S301~S303的执行主体可以是服务器中的CPU。
基于图1,从CPU通过PCIe总线将指定路径的文件夹中的目标业务类型对应的业务逻辑功能,加载到目标裸加速器中,生成目标业务加速器。具体的,可以通过目标裸加速器的驱动完成该加载过程。
本发明实施例提供的配置加速器的方法,通过确定目标业务类型和目标裸加速器,从而为目标裸加速器加载目标业务类型对应的业务逻辑功能,生成业务加速器。也就是说,本发明实施例中,当需要为某种业务提供加速服务时,才为该业务配置业务加速器,即按需设置,相比现有技术中预先设置好为每种业务提供加速服务的加速器的技术方案相比,能够提高加速器资源的利用率。
图4是基于图1绘制的,适用于本发明实施例的一种服务器的硬件架构示意图。其中,服务单板2中还包括FPGAx(其中,x代表0,1,2……,FPGAx表示可以有多个FPGA芯片),用于实现网卡功能和PCIe控制器功能,分别负责硬件加速设备数据平面和控制平面通信;示例的,从CPU与FPGAx之间通过PCIe总线连接,FPGAx与加速器硬件1~加速器硬件N之间通过并行转换器(英文全称:serializer-deserialize,英文简称:serdes)总线连接,FPGAx与交换单板之间通过serdes总线连接。
服务单板1中还包括FPGA;示例的,服务单板1中的FPGA与交换单板之间通过serdes总线连接。
在步骤S303之后,该方法还可以包括:从CPU为目标业务加速器分配标识,然后将目标业务加速器的标识上报给主CPU;其中,该过程可以称为将目标业务加速器注册到云OS的过程。接着,服务器可以通过如图4所示的硬件架构中的通路“主CPU-网卡-FPGA-serdes总线-交换单板-serdes总线-FPGAx-加速器硬件1~加速器硬件N”完成对业务的加速。这样,经过专用硬件通路,而不经过从CPU,实现对业务进行加速,能够加快业务数据的传输速率。
在一种可选的实现方式中,步骤S301可以包括:服务器接收UE发送的目标业务类型,若服务器中没有目标业务类型对应的业务加速器,则服务器从该至少一个裸加速器中选择一个裸加速器作为目标裸加速器。
其中,目标业务类型对应的业务加速器是指,为具有目标类型业务的业务提供加速服务的业务加速器。
在该可选的实现方式中,服务器自主选择目标裸加速器。基于图1,主CPU接收UE发送的目标业务类型,并判断业务加速器的标识构成的集合中是否包含目标业务类型对应的业务加速器,若没有,则在裸加速器的标识构成的集合中选择一个裸加速器的标识作为目标裸加速器的标识。示例的,主CPU可以在裸加速器的标识构成的集合中任意选择一个裸加速器的标识作为目标裸加速器的标识,或者,可以在裸加速器的标识构成的集合中选择与该UE之间的距离小于等于预设值的一个从CPU上报的裸加速器的标识中的一个裸加速器的标识作为目标裸加速器的标识。当然不限于此。
其中,该可选的实现方式中的业务加速器的标识构成的集合可以是部分或所有从CPU上报的业务加速器的标识构成的集合;裸加速器的标识构成的集合可以是部分或所有从CPU上报的裸加速器的标识构成的集合。
另外,若业务加速器的标识构成的集合中包含目标业务类型对应的业务加速器,则服务器可以直接利用该业务加速器为具有目标业务类型的业务提供加速服务,其具体的加速服务的实现方式可以参考现有技术,此处不再赘述。另外,服务器也可以在接收到UE的指示消息的情况下,将业务加速器构成的集合中的一个业务加速器,例如任意一个业务加速器或当前时刻空闲的一个业务加速器或距离该UE较近的服务单板上的一个业务加速器或该指示消息中携带的一个业务加速器等,上所加载的业务逻辑功能卸载,生成裸加速器;接着,重新将该裸加速器生成目标业务加速器。
在另一种可选的实现方式中,步骤S301可以包括:服务器接收用户设备发送的目标业务类型和目标裸加速器的标识。
该可选的实现方式中,由用户指定目标裸加速器。其中,UE可以向用户提供UI,以使得用户向该UE指示目标裸加速器,从而使得该UE向服务器指示该目标裸加速器的标识。
在一种可选的实现方式中,在步骤S303之后,该方法还可以包括:服务器卸载目标业务加速器中所加载的目标业务类型对应的业务逻辑功能,生成裸加速器。
该可选的实现方式,通过卸载业务加速器中所加载的业务逻辑功能,使得该业务加速器生成裸加速器,进一步地,服务器还可以利用上述步骤S301-S303所提供的方法,为该裸加速器加载其他业务类型对应的业务逻辑功能,从而使得一个裸加速器可以在不同时刻为具有不同类型的业务提供加速服务,也就是说,一个物理设备可以配置成支撑不同业务的加速引擎,从而满足对不同类型的业务进行加速的需求,因此具有很大的灵活性;另外,能够利用较少的加速器硬件,为较多类型的业务提供加速服务,从而节省硬件资源。并且,在加速器硬件个数确定的前提下,能够使得每个加速器硬件得到充分的利用,从而极大的提高了资源的利用率。
示例1:服务器接收UE的指示消息,其中,该指示消息中携带有目标业务加速器的标识,用以指示服务器卸载目标业务加速器中所加载的目标业务类型对应的业务逻辑功能;服务器根据该指示消息卸载目标业务加速器中所加载的目标业务类型对应的业务逻辑功能,生成裸加速器。
基于图1,主CPU接收UE发送的指示消息,该指示消息中携带有目标业务加速器的标识;然后,向该目标业务加速器所在的从服务单板上的从CPU发送该指示消息;接着,该从CPU根据该指示消息卸载目标业务加速器中所加载的目标业务类型对应的业务逻辑功能,生成裸加速器。另外该方法还可以包括:该从CPU删除该目标业务加速器的标识,并为该裸加速器分配标识。
示例2:基于上述步骤301的一种可选的实现方式,若服务器确定业务加速器构成的集合中没有目标业务类型对应的业务加速器,并且裸加速器构成的集合为空,即服务器中不存在裸加速器,则服务器将业务加速器构成的集合中的其中一个业务加速器,例如任意一个业务加速器或当前时刻空闲的一个业务加速器或距离该UE较近的一个服务单板上的一个业务加速器或指示消息中携带的一个业务加速器等,上所加载的业务逻辑功能卸载,生成裸加速器。接着,重新为将该裸加速器生成目标业务类型对应的业务加速器。
可选的,在执行步骤S303之后,该方法还可以包括:服务器为目标业务加速器分配标识,并且删除目标裸加速器的标识。在一种可选的实现方式中,该方法还可以包括:服务器更新裸加速器的标识构成的集合和业务加速器的标识构成的集合中的至少一种。
其中,目标业务加速器的标识可以体现一些属性信息,例如VCx表示音视频业务对应的业务加速器;本发明实施例对属性信息的所占的字段和类型等信息不进行限定。
基于图1,裸加速器所在的从服务单板上的从CPU生成目标业务加速器之后,该从CPU可以为目标业务加速器分配标识,并删除目标裸加速器的标识;然后,该从CPU向主CPU发送第一指示消息和第二指示消息,其中,第一指示消息中包含目标业务加速器的标识,用以使主CPU在业务加速器的标识构成的集合中增加目标业务加速器的标识;第二指示消息中包含目标裸加速器的标识,用以使主CPU在裸加速器的标识构成的集合中删除目标业务加速器的标识。具体实现时,第一指示消息和第二指示消息可以合并为同一条指示消息,从而减少信令交互。主CPU启动热插拔,从而更新裸加速器构成的集合和业务加速器构成的集合。其中,热插拔是云OS的一个软件功能,用以更新裸加速器构成的集合和业务加速器构成的集合。具体实现时,主CPU可以周期性或触发性地启动热插拔。
其中,裸加速器的标识构成的集合和业务加速器的标识构成的集合中的至少一种可以以表格、列表或其组合等任一种方式被存储在服务器中。
在一种可选的实现方式中,该方法还可以包括:服务器向UE发送裸加速器的标识构成的集合和业务加速器的标识构成的集合中的至少一种。
其中,该UE可以是向服务器请求加速服务的任一个UE。
基于图1,主CPU向UE发送裸加速器的标识构成的集合和业务加速器的标识构成的集合中的至少一种。该可选的实现方式能够使UE获知服务器中的裸加速器的标识构成的集合和业务加速器的标识构成的集合,从而可以使用户自主选择对目标裸加速器或目标业务加速器。
在一种可选的实现方式中,该方法还可以包括:服务器显示裸加速器的标识构成的集合和业务加速器的标识构成的集合中的至少一种。
基于图1,主CPU所在的主服务单板(或服务器)可以通过用户界面(英文全称:userinterface,英文简称:UI)显示裸加速器的标识构成的集合和业务加速器的标识构成的集合中的至少一种。其中,这里的裸加速器的标识构成的集合可以是部分或所有从CPU所在的服务单板上的裸加速器的标识构成的集合,业务加速器的标识可以是部分或所有从CPU所在的服务单板上的业务加速器的标识构成的集合。另外,从CPU所在的从服务单板(或服务器)页可以通过UI显示该从服务单板上的裸加速器的标识构成的集合和业务加速器的标识构成的集合中的至少一种。
该可选的实现方式可以应用于以下场景中:管理员通过向服务器输入云OS命令,以查看裸加速器的标识构成的集合和业务加速器的标识构成的集合中的至少一种;服务器根据该云OS命令,显示裸加速器的标识构成的集合和业务加速器的标识构成的集合中的至少一种。
如图5所示,是本发明实施例提供一种配置加速器的装置50的结构示意图。该装置50应用于包含至少一个裸加速器的服务器中,其中,所述裸加速器是指为加速器硬件加载了基本逻辑功能之后生成的加速器,所述基本逻辑功能包括通信接口功能和加载功能。该装置50用以执行上述提供的配置加速器的方法中服务器所执行的步骤,该装置50可以包括相应步骤所对应的单元模块,示例的,可以包括:
确定单元501,用于确定目标业务类型和目标裸加速器,以及确定所述目标业务类型对应的业务逻辑功能。
加载单元502,用于为所述目标裸加速器加载所述目标业务类型对应的业务逻辑功能,生成目标业务加速器,其中,所述目标业务加速器能够为具有所述目标业务类型的业务提供加速服务。
在一种可选的实现方式中,所述确定单元501具体可以用于:接收用户设备发送的目标业务类型,若所述服务器中没有为具有所述目标业务类型的业务提供加速服务的加速器,则从所述至少一个裸加速器中选择一个裸加速器作为目标裸加速器。
在另一种可选的实现方式中,所述确定单元501具体可以用于:接收用户设备发送的目标业务类型和目标裸加速器的标识。
可选的,该装置50还可以包括:卸载单元503,用于卸载所述目标业务加速器中所加载的所述目标业务类型对应的业务逻辑功能,生成裸加速器。
可选的,该装置50还可以包括:更新单元504,用于更新裸加速器的标识构成的集合和业务加速器的标识构成的集合中的至少一种。
可选的,该装置50还可以包括:发送单元505,用于向用户设备发送裸加速器的标识构成的集合和业务加速器的标识构成的集合中的至少一种。
可选的,该装置50还可以包括:显示单元506,用于显示裸加速器的标识构成的集合和业务加速器的标识构成的集合中的至少一种。
可以理解,本发明实施例的装置50可对应于上述实施例所述的方法中的服务器,并且本发明实施例的装置50中的各个模块的划分和/或功能等均是为了实现上述方法流程,为了简洁,在此不再赘述。
由于本发明实施例中的装置50可以用于执行上述方法流程,因此,其所能获得的技术效果也可参考上述方法实施例,在此不再赘述。
如图6所示,为本发明实施例提供一种配置加速器的装置60的结构示意图。该装置60应用于包含至少一个裸加速器的服务器中,其中,所述裸加速器是指为加速器硬件加载了基本逻辑功能之后生成的加速器,所述基本逻辑功能包括通信接口功能和加载功能。该装置60用以执行上述提供的配置加速器的方法中服务器所执行的步骤,示例的,该装置60可以包括:处理器601、存储器602、系统总线603和通信接口604。
所述存储器602用于存储计算机执行指令,所述处理器601与所述存储器602通过所述系统总线连接,当所述装置60运行时,所述处理器601执行所述存储器603存储的所述计算机执行指令,以使所述装置60执行上述任一种配置加速器的方法。具体的配置加速器的方法可参见上文所示的实施例中的相关描述,此处不再赘述。
本实施例还提供一种存储介质,该存储介质可以包括所述存储器602。
所述处理器601可以为中央处理器(central processing unit,CPU)。所述处理器601还可以为其他通用处理器、数字信号处理器(digital signal processing,DSP)、专用集成电路(application specific integrated circuit,ASIC)、现场可编程门阵列(field-programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述处理器601可以为专用处理器,该专用处理器可以包括基带处理芯片、射频处理芯片等中的至少一个。进一步地,该专用处理器还可以包括具有装置60其他专用处理功能的芯片。
所述存储器602可以包括易失性存储器(volatile memory),例如随机存取存储器(random-access memory,RAM);所述存储器602也可以包括非易失性存储器(non-volatilememory),例如只读存储器(read-only memory,ROM),快闪存储器(flash memory),硬盘(hard disk drive,HDD)或固态硬盘(solid-state drive,SSD);所述存储器602还可以包括上述种类的存储器的组合。
所述系统总线603可以包括数据总线、电源总线、控制总线和信号状态总线等。本实施例中为了清楚说明,在图6中将各种总线都示意为系统总线603。
所述通信接口604具体可以是装置60上的收发器。该收发器可以为无线收发器。例如,无线收发器可以是装置60的天线等。所述处理器601通过所述通信接口604与其他设备,例如终端之间进行数据的收发。
在具体实现过程中,上述任一方法流程中的各步骤均可以通过硬件形式的处理器601执行存储器602中存储的软件形式的计算机执行指令实现。为避免重复,此处不再赘述。
由于本发明实施例提供的装置60可用于执行上述方法流程,因此其所能获得的技术效果可参考上述方法实施例,此处不再赘述。
需要说明的是,上述装置50和/或装置60可以是服务器,也可以是服务器中的一个功能模块。若是后者,则本发明实施例还提供了一种服务器,该服务器包括上述提供的任一种装置50或装置60。
如图7所示,基于上述各实施例,本发明另一实施例还提供了一种通信设备,包括:一个或多个处理器71,一个或多个加速器硬件72以及存储器73;
其中,处理器71用于完成基本业务的处理(需要加速器处理的业务除外)以及用于完成对加速器硬件72的管理(例如,加载业务逻辑功能到加速器硬件),加速器硬件72可作为前述实施例中提到的“裸加速器”或者“业务加速器”使用,存储器73用于存储处理器执行程序所需代码及运行过程中产生的各种数据。
其中,处理器71对加速器硬件进行管理的具体过程可参见上述各实施例中的具体方法,例如,参见上述实施例中步骤301-303,这里不再赘述。
所属领域的技术人员可以清楚地了解到,为描述的方便和简洁,上述描述的装置,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将装置的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。上述描述的系统、装置和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述模块或单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)或处理器(英文:processor)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、ROM、RAM)、磁碟或者光盘等各种可以存储程序代码的介质。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以所述权利要求的保护范围为准。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (12)

1.一种配置加速器的方法,其特征在于,应用于包含至少一个裸加速器的服务器中,其中,所述裸加速器是指为加速器硬件加载了基本逻辑功能之后生成的加速器,所述基本逻辑功能包括通信接口功能和加载功能;所述方法包括:
当需要为目标业务提供加速服务时,所述服务器确定目标业务类型,若所述服务器中没有能够直接为具有所述目标业务类型的业务提供加速服务的加速器,则所述服务器确定目标裸加速器;
所述服务器确定所述目标业务类型对应的业务逻辑功能;
所述服务器为所述目标裸加速器加载所述目标业务类型对应的业务逻辑功能,生成目标业务加速器,其中,所述目标业务加速器能够为具有所述目标业务类型的业务提供加速服务。
2.根据权利要求1所述的方法,其特征在于,所述服务器确定目标业务类型和目标裸加速器,包括:
所述服务器接收用户设备发送的目标业务类型,若所述服务器中没有为具有所述目标业务类型的业务提供加速服务的加速器,则所述服务器从所述至少一个裸加速器中选择一个裸加速器作为目标裸加速器;
或者,所述服务器接收用户设备发送的目标业务类型和目标裸加速器的标识。
3.根据权利要求1或2所述的方法,其特征在于,在所述服务器为所述目标裸加速器加载待加载的业务逻辑功能,生成目标业务加速器之后,所述方法还包括:
所述服务器卸载所述目标业务加速器中所加载的所述目标业务类型对应的业务逻辑功能,生成裸加速器。
4.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
所述服务器更新裸加速器的标识构成的集合和业务加速器的标识构成的集合中的至少一种。
5.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
所述服务器向用户设备发送裸加速器的标识构成的集合和业务加速器的标识构成的集合中的至少一种。
6.根据权利要求1或2所述的方法,其特征在于,所述方法还包括:
所述服务器显示裸加速器的标识构成的集合和业务加速器的标识构成的集合中的至少一种。
7.一种配置加速器的装置,其特征在于,应用于包含至少一个裸加速器的服务器中,其中,所述裸加速器是指为加速器硬件加载了基本逻辑功能之后生成的加速器,所述基本逻辑功能包括通信接口功能和加载功能;所述装置包括:
确定单元,用于当需要为目标业务提供加速服务时,确定目标业务类型,若所述服务器中没有能够直接为具有所述目标业务类型的业务提供加速服务的加速器,确定目标裸加速器,以及确定所述目标业务类型对应的业务逻辑功能;
加载单元,用于为所述目标裸加速器加载所述目标业务类型对应的业务逻辑功能,生成目标业务加速器,其中,所述目标业务加速器能够为具有所述目标业务类型的业务提供加速服务。
8.根据权利要求7所述的装置,其特征在于,
所述确定单元具体用于:接收用户设备发送的目标业务类型,若所述服务器中没有为具有所述目标业务类型的业务提供加速服务的加速器,则从所述至少一个裸加速器中选择一个裸加速器作为目标裸加速器;或者,接收用户设备发送的目标业务类型和目标裸加速器的标识。
9.根据权利要求7或8所述的装置,其特征在于,还包括:
卸载单元,用于卸载所述目标业务加速器中所加载的所述目标业务类型对应的业务逻辑功能,生成裸加速器。
10.根据权利要求7或8所述的装置,其特征在于,还包括:
更新单元,用于更新裸加速器的标识构成的集合和业务加速器的标识构成的集合中的至少一种。
11.根据权利要求7或8所述的装置,其特征在于,还包括:
发送单元,用于向用户设备发送裸加速器的标识构成的集合和业务加速器的标识构成的集合中的至少一种。
12.根据权利要求7或8所述的装置,其特征在于,还包括:
显示单元,用于显示裸加速器的标识构成的集合和业务加速器的标识构成的集合中的至少一种。
CN201610227605.3A 2015-12-31 2016-04-13 一种配置加速器的方法和装置 Active CN105824706B (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
PCT/CN2016/112143 WO2017114361A1 (zh) 2015-12-31 2016-12-26 一种配置加速器的方法和装置
EP16881150.3A EP3385835B1 (en) 2015-12-31 2016-12-26 Method and apparatus for configuring accelerator
US16/025,569 US10698699B2 (en) 2015-12-31 2018-07-02 Method and apparatus for configuring accelerator

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN201511032133 2015-12-31
CN2015110321338 2015-12-31

Publications (2)

Publication Number Publication Date
CN105824706A CN105824706A (zh) 2016-08-03
CN105824706B true CN105824706B (zh) 2020-11-06

Family

ID=56526949

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610227605.3A Active CN105824706B (zh) 2015-12-31 2016-04-13 一种配置加速器的方法和装置

Country Status (4)

Country Link
US (1) US10698699B2 (zh)
EP (1) EP3385835B1 (zh)
CN (1) CN105824706B (zh)
WO (1) WO2017114361A1 (zh)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10270709B2 (en) 2015-06-26 2019-04-23 Microsoft Technology Licensing, Llc Allocating acceleration component functionality for supporting services
US9792154B2 (en) 2015-04-17 2017-10-17 Microsoft Technology Licensing, Llc Data processing system having a hardware acceleration plane and a software plane
US10198294B2 (en) 2015-04-17 2019-02-05 Microsoft Licensing Technology, LLC Handling tenant requests in a system that uses hardware acceleration components
US9819542B2 (en) * 2015-06-26 2017-11-14 Microsoft Technology Licensing, Llc Configuring acceleration components over a network
US10216555B2 (en) 2015-06-26 2019-02-26 Microsoft Technology Licensing, Llc Partially reconfiguring acceleration components
CN105824706B (zh) 2015-12-31 2020-11-06 华为技术有限公司 一种配置加速器的方法和装置
CN108829512B (zh) * 2018-05-09 2021-08-24 山东浪潮科学研究院有限公司 一种云中心硬件加速计算力的分配方法、系统和云中心
CN112352220B (zh) 2019-01-04 2024-05-10 百度时代网络技术(北京)有限公司 保护由数据处理加速器处理的数据的方法和系统
WO2020140265A1 (en) 2019-01-04 2020-07-09 Baidu.Com Times Technology (Beijing) Co., Ltd. Data processing accelerator having security unit to provide root trust services
EP3794771A4 (en) * 2019-01-04 2022-01-05 Baidu.com Times Technology (Beijing) Co., Ltd. PROCESS AND SYSTEM FOR DISTRIBUTION AND EXCHANGE OF KEYS FOR DATA PROCESSING ACCELERATORS
JP6991431B2 (ja) 2019-01-04 2022-01-12 バイドゥドットコム タイムズ テクノロジー (ベイジン) カンパニー リミテッド ホストシステムとデータ処理アクセラレータの間の通信を保護するための方法およびシステム
CN112352242B (zh) 2019-01-04 2024-03-22 百度时代网络技术(北京)有限公司 具有本地时间单元以生成时间戳的数据处理加速器
CN112292678A (zh) 2019-01-04 2021-01-29 百度时代网络技术(北京)有限公司 用于验证将要由主机系统的数据处理加速器执行的内核对象的方法与系统
EP3811557A4 (en) 2019-01-04 2022-04-13 Baidu.com Times Technology (Beijing) Co., Ltd. METHOD AND SYSTEM FOR DERIVING A SESSION KEY TO SECURE AN INFORMATION EXCHANGE CHANNEL BETWEEN A HOST SYSTEM AND A DATA PROCESSING ACCELERATOR
US11616651B2 (en) 2019-01-04 2023-03-28 Baidu Usa Llc Method for establishing a secure information exchange channel between a host system and a data processing accelerator
CN112262545B (zh) 2019-01-04 2023-09-15 百度时代网络技术(北京)有限公司 主机系统与数据处理加速器之间的证明协议
CN112236772B (zh) 2019-01-04 2023-12-22 百度时代网络技术(北京)有限公司 用于管理数据处理加速器的内存的方法和系统
CN109918335A (zh) * 2019-02-28 2019-06-21 苏州浪潮智能科技有限公司 一种基于cpu+fpga 8路dsm架构服务器系统及处理方法
CN111858016A (zh) * 2019-04-29 2020-10-30 阿里巴巴集团控股有限公司 计算作业处理方法、系统、移动设备及加速设备
EP3901780A1 (de) * 2020-04-20 2021-10-27 Siemens Aktiengesellschaft Digitale schaltanordnung und verfahren zur konfiguration zumindest einer konfigurierbaren hardwarekomponente

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6256724B1 (en) * 1998-02-04 2001-07-03 Texas Instruments Incorporated Digital signal processor with efficiently connectable hardware co-processor
CN104375972A (zh) * 2013-08-16 2015-02-25 亚德诺半导体集团 用于可配置数学硬件加速器的微处理器集成配置控制器
CN104657308A (zh) * 2015-03-04 2015-05-27 浪潮电子信息产业股份有限公司 一种用fpga实现的服务器硬件加速的方法
CN104951353A (zh) * 2014-03-28 2015-09-30 华为技术有限公司 一种对vnf实现加速处理的方法及装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6209077B1 (en) * 1998-12-21 2001-03-27 Sandia Corporation General purpose programmable accelerator board
JP4779756B2 (ja) * 2006-03-29 2011-09-28 カシオ計算機株式会社 コンピュータシステムにおけるサーバ装置及びサーバ制御プログラム
US8082418B2 (en) * 2007-12-17 2011-12-20 Intel Corporation Method and apparatus for coherent device initialization and access
US8869160B2 (en) * 2009-12-24 2014-10-21 International Business Machines Corporation Goal oriented performance management of workload utilizing accelerators
WO2014105019A1 (en) * 2012-12-27 2014-07-03 Empire Technology Development, Llc Virtual machine monitor (vmm) extension for time shared accelerator management and side-channel vulnerability prevention
US20140380025A1 (en) * 2013-01-23 2014-12-25 Empire Technology Development Llc Management of hardware accelerator configurations in a processor chip
US9183174B2 (en) * 2013-03-15 2015-11-10 Qualcomm Incorporated Use case based reconfiguration of co-processor cores for general purpose processors
CN105824706B (zh) * 2015-12-31 2020-11-06 华为技术有限公司 一种配置加速器的方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6256724B1 (en) * 1998-02-04 2001-07-03 Texas Instruments Incorporated Digital signal processor with efficiently connectable hardware co-processor
CN104375972A (zh) * 2013-08-16 2015-02-25 亚德诺半导体集团 用于可配置数学硬件加速器的微处理器集成配置控制器
CN104951353A (zh) * 2014-03-28 2015-09-30 华为技术有限公司 一种对vnf实现加速处理的方法及装置
CN104657308A (zh) * 2015-03-04 2015-05-27 浪潮电子信息产业股份有限公司 一种用fpga实现的服务器硬件加速的方法

Also Published As

Publication number Publication date
EP3385835B1 (en) 2023-04-05
CN105824706A (zh) 2016-08-03
WO2017114361A1 (zh) 2017-07-06
EP3385835A4 (en) 2019-01-09
US20180307499A1 (en) 2018-10-25
US10698699B2 (en) 2020-06-30
EP3385835A1 (en) 2018-10-10

Similar Documents

Publication Publication Date Title
CN105824706B (zh) 一种配置加速器的方法和装置
EP3609161B1 (en) Network slice creating method and apparatus, and communication system
CN108632945B (zh) 一种网络切片选择方法、用户设备及网络设备
CN110019125B (zh) 数据库管理的方法和装置
CN108024270B (zh) 一种信息发送方法、单元和系统
EP3843440A1 (en) Network slice selection method and device
US10924966B2 (en) Management method, management unit, and system
EP3512233A1 (en) Method for managing network slice and management unit
JP6636142B2 (ja) スケールアウト関連付けの方法および装置、ならびにシステム
US11336521B2 (en) Acceleration resource scheduling method and apparatus, and acceleration system
CN109547231B (zh) 一种网络切片管理方法及装置
CN108628660B (zh) 一种虚拟机扩缩容方法及虚拟管理设备
CN104980416A (zh) 一种内容分布网络中的数据访问方法、装置和系统
EP3702915B1 (en) Data processing method and device, storage medium, processor, and system
WO2018121354A1 (zh) 一种物理网络功能pnf迁移方法及相关设备
CN110275680B (zh) 一种双控双活存储系统
CN110582998A (zh) 群组的通信方法及装置、计算机存储介质、计算机设备
EP3358795B1 (en) Method and apparatus for allocating a virtual resource in network functions virtualization (nfv) network
CN107086937B (zh) 一种监控方法及设备
EP2852113A1 (en) Load sharing method and device, and single board
CN113282410A (zh) 资源配置方法及装置
CN107534678B (zh) 建立vnfm与vim之间的连接的方法、装置及系统
CN110731109B (zh) 一种资源指示方法、设备和计算机存储介质
CN114070889B (zh) 配置方法、流量转发方法、设备、存储介质及程序产品
CN113872995A (zh) 选择边缘使能客户端的方法和装置

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