CN107977256A - 一种对fpga加速卡的访问方法、装置及介质 - Google Patents

一种对fpga加速卡的访问方法、装置及介质 Download PDF

Info

Publication number
CN107977256A
CN107977256A CN201711349422.XA CN201711349422A CN107977256A CN 107977256 A CN107977256 A CN 107977256A CN 201711349422 A CN201711349422 A CN 201711349422A CN 107977256 A CN107977256 A CN 107977256A
Authority
CN
China
Prior art keywords
virtual
kernel
accelerator cards
initial data
fpga accelerator
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.)
Withdrawn
Application number
CN201711349422.XA
Other languages
English (en)
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.)
Zhengzhou Yunhai Information Technology Co Ltd
Original Assignee
Zhengzhou Yunhai Information Technology 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 Zhengzhou Yunhai Information Technology Co Ltd filed Critical Zhengzhou Yunhai Information Technology Co Ltd
Priority to CN201711349422.XA priority Critical patent/CN107977256A/zh
Publication of CN107977256A publication Critical patent/CN107977256A/zh
Withdrawn legal-status Critical Current

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/44Arrangements for executing specific programs
    • G06F9/455Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
    • G06F9/45533Hypervisors; Virtual machine monitors
    • G06F9/45558Hypervisor-specific management and integration aspects
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F13/00Interconnection of, or transfer of information or other signals between, memories, input/output devices or central processing units
    • G06F13/38Information transfer, e.g. on bus
    • G06F13/40Bus structure

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Hardware Design (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明公开了一种对FPGA加速卡的访问方法、装置及介质,该方法步骤包括:在内核态下通过内核虚拟机建立虚拟系统与主系统之间关于驱动层的内核通信连接;将虚拟系统中的原始数据通过内核通信连接传输至主系统,并根据原始数据的目的标识查得预先与主系统建立连接的目标FPGA加速卡;通过目标FPGA加速卡对原始数据进行运算以得到结果数据,并依照原始数据的来源标识将结果数据传输回虚拟系统。本方法在实现了虚拟系统对FPGA加速卡的访问及使用,保证了在众多虚拟系统与FPGA加速卡之间传输数据的准确性和整体机制的高可用性。此外,本发明还提供一种对FPGA加速卡的访问装置及介质,有益效果如上所述。

Description

一种对FPGA加速卡的访问方法、装置及介质
技术领域
本发明涉及云计算领域,特别是涉及一种对FPGA加速卡的访问方法、装置及介质。
背景技术
FPGA加速卡是指利用FPGA的高速计算能力,对处理器所发送的原始数据进行加速计算,并将经过计算的结果数据返回给处理器,从而实现协助处理器完成数据处理,提高了整体的运算效率,因此在FPGA加速卡的辅助下,处理器能够高效完成加解密运算、图像处理、解压缩等对于运算性能要求较高的运算任务。
而在云计算服务被大规模应用的当下,服务器设备通常被虚拟为多台相互隔离的虚拟系统,每一个虚拟系统独立进行对数据的处理,在虚拟系统进行数据处理时往往也需要对处理过程进行加速,因此需要使用FPGA加速卡协助虚拟系统进行数据处理,但是FPGA加速卡作为硬件设备通常情况下通过PCI-E接口插槽直接连接在服务器设备上,因此作为实体的FPGA加速卡数量相对较少,而虚拟系统数量较大。当前尚未存在有效机制实现虚拟系统对于FPGA加速卡的访问及使用。
由此可见,提供一种对FPGA加速卡的访问方法,以实现虚拟系统对FPGA加速卡的访问以及FPGA加速卡与虚拟系统之间准确的数据交互,是本领域技术人员亟待解决的问题。
发明内容
本发明的目的是提供一种对FPGA加速卡的访问方法、装置及介质,实现了虚拟系统对FPGA加速卡的访问及使用,同时保证了在众多虚拟系统与FPGA加速卡之间传输原始数据以及结果数据的准确性,保证了整体机制的高可用性。
为解决上述技术问题,本发明提供一种对FPGA加速卡的访问方法,包括:
在内核态下通过内核虚拟机建立虚拟系统与主系统之间关于驱动层的内核通信连接;其中,内核虚拟机安装于主系统中,虚拟系统安装于内核虚拟机中;
将虚拟系统中的原始数据通过内核通信连接传输至主系统,并根据原始数据的目的标识查得预先与主系统建立连接的目标FPGA加速卡;
通过目标FPGA加速卡对原始数据进行运算以得到结果数据,并依照原始数据的来源标识将结果数据传输回虚拟系统。
优选的,在将虚拟系统中的原始数据通过内核通信连接传输至主系统之前,该方法进一步包括:
设置对虚拟系统的优先级的判定标准;
依照判定标准判定虚拟系统的优先级顺序;
相应的,将虚拟系统中的原始数据通过内核通信连接传输至主系统,具体为:
依照优先级顺序将原始数据通过内核通信连接传输至主系统。
优选的,判定标准具体为:
任务请求时刻较早的虚拟系统具有较高优先级;任务请求时刻相同的情况下,实时任务的优先级高于非实时任务的优先级。
优选的,该方法进一步包括:
在虚拟系统中通过QEMU对目标FPGA加速卡进行仿真模拟。
优选的,在将虚拟系统中的原始数据通过内核通信连接传输至主系统之前,该方法进一步包括:
在主系统中设置与各虚拟系统对应的数据列表;
相应的,将虚拟系统中的原始数据通过内核通信连接传输至主系统具体为:
将原始数据通过内核通信连接传输至主系统中的目标数据列表。
优选的,内核虚拟机具体为KVM。
此外,本发明还提供一种对FPGA加速卡的访问装置,包括:
连接模块,用于在内核态下通过内核虚拟机建立虚拟系统与主系统之间关于驱动层的内核通信连接;
传输查找模块,用于将虚拟系统中的原始数据通过内核通信连接传输至主系统,并根据原始数据的目的标识查得预先与主系统建立连接的目标FPGA加速卡;
运算回传模块,用于通过目标FPGA加速卡对原始数据进行运算以得到结果数据,并依照原始数据的来源标识将结果数据传输回虚拟系统。
优选的,该装置进一步包括:
标准设定模块,用于设置对虚拟系统的优先级的判定标准;
优先级判定模块,用于依照判定标准判定虚拟系统的优先级顺序。
此外,本发明还提供一种对FPGA加速卡的访问装置,包括:
存储器,用于存储计算机程序;
处理器,用于执行计算机程序时实现如上述的对FPGA加速卡的访问方法的步骤。
此外,本发明还提供一种计算机可读存储介质,计算机可读存储介质上存储有计算机程序,计算机程序被处理器执行时实现如上述的对FPGA加速卡的访问方法的步骤。
本发明所提供的对FPGA加速卡的访问方法,通过在内核态的工作环境下,通过内核虚拟机建立主系统的驱动层与虚拟系统的驱动层之间的内核通信连接,进而能够通过该内核通信连接实现虚拟系统与主系统之间的数据交互,并且由于FPGA加速卡与主系统之间预先建立有连接关系,因此通过虚拟系统传输到主系统中的数据能够进一步被传输到FPGA加速卡中进行运算。此外,由于在进行原始数据前,先需要通过原始数据的目的标识查找到该原始数据应传输到的目标FPGA加速卡,进而再将此原始数据传输到该目标FPGA加速卡中,并且在数据运算结束后会依照原始数据的来源标识将结果数据传输回相应的虚拟系统。因此,本方法在实现了虚拟系统对FPGA加速卡的访问及使用,同时保证了在众多虚拟系统与FPGA加速卡之间传输原始数据以及结果数据的准确性,保证了整体机制的高可用性。此外,本发明还提供一种对FPGA加速卡的访问装置及介质,有益效果如上所述。
附图说明
为了更清楚地说明本发明实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种对FPGA加速卡的访问方法的流程图;
图2为本发明实施例提供的另一种对FPGA加速卡的访问方法的流程图;
图3为本发明实施例提供的一种对FPGA加速卡的访问装置结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。
本发明的核心是提供一种对FPGA加速卡的访问方法,实现了虚拟系统对FPGA加速卡的访问及使用,同时保证了在众多虚拟系统与FPGA加速卡之间传输原始数据以及结果数据的准确性,保证了整体机制的高可用性。本发明的另一核心是提供一种对FPGA加速卡的访问装置及介质。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。
实施例一
图1为本发明实施例提供的一种对FPGA加速卡的访问方法的流程图。请参考图1,对FPGA加速卡的访问方法的具体步骤包括:
步骤S10:在内核态下通过内核虚拟机建立虚拟系统与主系统之间关于驱动层的内核通信连接。
其中,内核虚拟机安装于主系统中,虚拟系统安装于内核虚拟机中。
需要说明的是,内核态是CPU具有最大权限的状态,可以访问内存中的所有数据,也包括如硬盘、网卡等外围设备中的数据,因此在内核态下适合进行驱动层等较底层之间的数据交互。内核虚拟机通常安装在服务器的主系统中,通过内核虚拟机能够搭载虚拟系统,相当于在主系统中包含有多个虚拟系统,而内核虚拟机对虚拟系统进行了内存虚拟化的操作以使各虚拟系统在工作时的内存在逻辑上相互独立,而通过修改内核虚拟机配置文件或输入内核虚拟机命令的方式能够建立主系统与虚拟系统之间的连接关系。由于驱动层能够与硬件设备直接交互,因此能够保证数据交互的稳定性,并且由于数据交互以及处理的最终作用对象为硬件设备,因此在主系统与虚拟系统二者的驱动层之间建立内核通信连接,能够相对提高数据交互的效率。
步骤S11:将虚拟系统中的原始数据通过内核通信连接传输至主系统,并根据原始数据的目的标识查得预先与主系统建立连接的目标FPGA加速卡。
需要说明的是,在通常情况下,内核虚拟机上的虚拟系统数量较多,而与主系统连接的FPGA加速卡也可以有多个。而每一个虚拟系统均能够使用FPGA加速卡进行对原始数据的运算,因此为了原始数据能够被传输到正确的FPGA加速卡,需要通过分析原始数据携带的目的标识,以确定该目的标识所表征的目标加速卡,进而将原始数据传输到该目标加速卡,保证了对原始数据传输时的准确性。
步骤S12:通过目标FPGA加速卡对原始数据进行运算以得到结果数据,并依照原始数据的来源标识将结果数据传输回虚拟系统。
可以理解的是,来源标识能够表征FPGA加速卡所运算数据的来源虚拟系统。本步骤通过FPGA加速卡对原始数据进行运算得到结果数据,分担了处理器的工作负担,进而将结果数据依照原始数据携带的来源标识将结果数据返回给正确的虚拟系统,保证了数据传输的准确性。
本发明所提供的对FPGA加速卡的访问方法,通过在内核态的工作环境下,通过内核虚拟机建立主系统的驱动层与虚拟系统的驱动层之间的内核通信连接,进而能够通过该内核通信连接实现虚拟系统与主系统之间的数据交互,并且由于FPGA加速卡与主系统之间预先建立有连接关系,因此通过虚拟系统传输到主系统中的数据能够进一步被传输到FPGA加速卡中进行运算。此外,由于在进行原始数据前,先需要通过原始数据的目的标识查找到该原始数据应传输到的目标FPGA加速卡,进而再将此原始数据传输到该目标FPGA加速卡中,并且在数据运算结束后会依照原始数据的来源标识将结果数据传输回相应的虚拟系统。因此,本方法在实现了虚拟系统对FPGA加速卡的访问及使用,同时保证了在众多虚拟系统与FPGA加速卡之间传输原始数据以及结果数据的准确性,保证了整体机制的高可用性。
实施例二
图2为本发明实施例提供的另一种对FPGA加速卡的访问方法的流程图。图2中步骤S10与S12与图1相同,在此不再赘述。
如图2所示,作为一种优选的实施方式,在将虚拟系统中的原始数据通过内核通信连接传输至主系统之前,该方法进一步包括:
步骤S20:设置对虚拟系统的优先级的判定标准。
步骤S21:依照判定标准判定虚拟系统的优先级顺序。
相应的,步骤S11,具体为:
步骤S22:依照优先级顺序将原始数据通过内核通信连接传输至主系统,并根据原始数据的目的标识查得预先与主系统建立连接的目标FPGA加速卡。
可以理解的是,在实际使用中可能会出现多个虚拟系统同时需要使用同一FPGA加速卡的情况,但是FPGA加速卡在同一时刻下只能进行一项运算任务的执行,因此需要设定对虚拟系统的优先级的判定标准,进而根据该判定标准判定虚拟系统的优先级顺序,进而依照该优先级顺序控制虚拟系统使用FPGA加速卡,保证运算任务的正常进行。
此外,在上述实施方式的基础上,作为一种优选的实施方式,判定标准具体为:
任务请求时刻较早的虚拟系统具有较高优先级;任务请求时刻相同的情况下,实时任务的优先级高于非实时任务的优先级。
需要说明的是,FPGA需要先处理较早的任务,再执行后续任务,因此任务请求时刻较早的任务应具有较高的优先级。非实时任务是根据预先写好的脚本或可执行程序中的控制流程而进行的任务,而实时任务往往是由于当前虚拟系统的运算负担过重而需要FPGA加速卡立即进行某项原始数据运算以减轻运算负担而发起的运算任务,因此实时任务的优先级应高于非实时任务。
此外,作为一种优选的实施方式,该方法进一步包括:
步骤S23:在虚拟系统中通过QEMU对目标FPGA加速卡进行仿真模拟。
需要说明的是,通过QEMU对目标FPGA加速卡进行仿真模拟后,在虚拟系统中能够将FPGA加速卡作为本系统的虚拟设备,进而用户能够在虚拟系统中查看FPGA加速卡的相关信息,并且能够在用户层对FPGA加速卡进行控制,为用户与FPGA加速卡之间的交互提供了便利。
此外,作为一种优选的实施方式,在将虚拟系统中的原始数据通过内核通信连接传输至主系统之前,该方法进一步包括:
在主系统中设置与各虚拟系统对应的数据列表。
相应的,将虚拟系统中的原始数据通过内核通信连接传输至主系统具体为:
将原始数据通过内核通信连接传输至主系统中的目标数据列表。
需要说明的是,由于各个虚拟系统之间的数据在逻辑上是相互独立的,因此可以在主系统中针对于每一个虚拟系统均建立对应的数据列表,用于存储不同虚拟系统传输给FPGA加速卡的原始数据,以确保不同虚拟系统之间的数据独立性,避免数据发生交叉而造成错误。
此外,作为一种优选的实施方式,内核虚拟机具体为KVM。
由于KVM是Linux系统中预先集成的内核虚拟机,并且当前主系统与虚拟系统通常都为Linux系统,因此使用KVM作为内核虚拟机提供主系统与虚拟系统二者驱动层之间的内核通信连接,能够具有更高的兼容性,保证了主系统与虚拟系统之间数据交互的可靠及稳定性。
实施例三
在上文中对于对FPGA加速卡的访问方法的实施例进行了详细的描述,本发明还提供一种与该方法对应的对FPGA加速卡的访问装置,由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。
图3为本发明实施例提供的一种对FPGA加速卡的访问装置结构图。本发明实施例提供的对FPGA加速卡的访问装置,具体包括:
连接模块10,用于在内核态下通过内核虚拟机建立虚拟系统与主系统之间关于驱动层的内核通信连接。
传输查找模块11,用于将虚拟系统中的原始数据通过内核通信连接传输至主系统,并根据原始数据的目的标识查得预先与主系统建立连接的目标FPGA加速卡。
运算回传模块12,用于通过目标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加速卡的访问方法、装置及介质进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

Claims (10)

1.一种对FPGA加速卡的访问方法,其特征在于,包括:
在内核态下通过内核虚拟机建立虚拟系统与主系统之间关于驱动层的内核通信连接;其中,所述内核虚拟机安装于所述主系统中,虚拟系统安装于所述内核虚拟机中;
将所述虚拟系统中的原始数据通过所述内核通信连接传输至所述主系统,并根据所述原始数据的目的标识查得预先与所述主系统建立连接的目标FPGA加速卡;
通过所述目标FPGA加速卡对所述原始数据进行运算以得到结果数据,并依照所述原始数据的来源标识将所述结果数据传输回所述虚拟系统。
2.根据权利要求1所述的方法,其特征在于,在所述将所述虚拟系统中的原始数据通过所述内核通信连接传输至所述主系统之前,该方法进一步包括:
设置对所述虚拟系统的优先级的判定标准;
依照所述判定标准判定所述虚拟系统的优先级顺序;
相应的,所述将所述虚拟系统中的原始数据通过所述内核通信连接传输至所述主系统,具体为:
依照所述优先级顺序将所述原始数据通过所述内核通信连接传输至所述主系统。
3.根据权利要求2所述的方法,其特征在于,所述判定标准具体为:
任务请求时刻较早的所述虚拟系统具有较高优先级;任务请求时刻相同的情况下,实时任务的优先级高于非实时任务的优先级。
4.根据权利要求1所述的方法,其特征在于,该方法进一步包括:
在所述虚拟系统中通过QEMU对所述目标FPGA加速卡进行仿真模拟。
5.根据权利要求1所述的方法,其特征在于,在所述将所述虚拟系统中的原始数据通过所述内核通信连接传输至所述主系统之前,该方法进一步包括:
在所述主系统中设置与各所述虚拟系统对应的数据列表;
相应的,所述将所述虚拟系统中的原始数据通过所述内核通信连接传输至所述主系统具体为:
将所述原始数据通过所述内核通信连接传输至所述主系统中的目标数据列表。
6.根据权利要求1-5任意一项所述的方法,其特征在于,所述内核虚拟机具体为KVM。
7.一种对FPGA加速卡的访问装置,其特征在于,包括:
连接模块,用于在内核态下通过内核虚拟机建立虚拟系统与主系统之间关于驱动层的内核通信连接;
传输查找模块,用于将所述虚拟系统中的原始数据通过所述内核通信连接传输至所述主系统,并根据所述原始数据的目的标识查得预先与所述主系统建立连接的目标FPGA加速卡;
运算回传模块,用于通过所述目标FPGA加速卡对所述原始数据进行运算以得到结果数据,并依照所述原始数据的来源标识将所述结果数据传输回所述虚拟系统。
8.根据权利要求7所述的装置,其特征在于,该装置进一步包括:
标准设定模块,用于设置对所述虚拟系统的优先级的判定标准;
优先级判定模块,用于依照所述判定标准判定所述虚拟系统的优先级顺序。
9.一种对FPGA加速卡的访问装置,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至6任一项所述的对FPGA加速卡的访问方法的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如权利要求1至6任一项所述的对FPGA加速卡的访问方法的步骤。
CN201711349422.XA 2017-12-15 2017-12-15 一种对fpga加速卡的访问方法、装置及介质 Withdrawn CN107977256A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711349422.XA CN107977256A (zh) 2017-12-15 2017-12-15 一种对fpga加速卡的访问方法、装置及介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711349422.XA CN107977256A (zh) 2017-12-15 2017-12-15 一种对fpga加速卡的访问方法、装置及介质

Publications (1)

Publication Number Publication Date
CN107977256A true CN107977256A (zh) 2018-05-01

Family

ID=62006421

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711349422.XA Withdrawn CN107977256A (zh) 2017-12-15 2017-12-15 一种对fpga加速卡的访问方法、装置及介质

Country Status (1)

Country Link
CN (1) CN107977256A (zh)

Cited By (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108776648A (zh) * 2018-05-28 2018-11-09 郑州云海信息技术有限公司 数据传输方法、系统及fpga异构加速卡和存储介质
CN109634627A (zh) * 2019-01-23 2019-04-16 郑州云海信息技术有限公司 基于OpenStack平台管理FPGA设备的方法
CN110018873A (zh) * 2019-03-31 2019-07-16 山东超越数控电子股份有限公司 一种基于fpga优化虚拟桌面传输的方法
CN111104363A (zh) * 2019-12-27 2020-05-05 浪潮(北京)电子信息产业有限公司 一种fpga云平台使用方法、装置、设备、介质
WO2020119189A1 (zh) * 2018-12-13 2020-06-18 郑州云海信息技术有限公司 一种多虚拟机共享fpga板卡的方法、系统及装置
CN113220423A (zh) * 2021-06-04 2021-08-06 恒为科技(上海)股份有限公司 一种基于容器的多芯片管理方法和装置
CN114978676A (zh) * 2022-05-20 2022-08-30 江苏新质信息科技有限公司 基于FPGA、eBPF协同的数据包加解密方法及系统
CN116302314A (zh) * 2022-12-30 2023-06-23 天翼云科技有限公司 数据处理方法、装置、电子设备以及可读存储介质

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103916909A (zh) * 2013-01-04 2014-07-09 中国移动通信集团公司 基带池系统
CN104503825A (zh) * 2014-12-29 2015-04-08 西安电子科技大学 一种基于kvm混合式设备虚拟化方法
CN105159753A (zh) * 2015-09-25 2015-12-16 华为技术有限公司 加速器虚拟化的方法、装置及集中资源管理器
CN106020425A (zh) * 2016-05-27 2016-10-12 浪潮(北京)电子信息产业有限公司 一种fpga异构加速计算系统
CN106453126A (zh) * 2016-11-29 2017-02-22 郑州云海信息技术有限公司 一种虚拟机流量控制方法及装置
CN106681793A (zh) * 2016-11-25 2017-05-17 同济大学 一种基于kvm的加速器虚拟化数据处理系统及方法

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103916909A (zh) * 2013-01-04 2014-07-09 中国移动通信集团公司 基带池系统
CN104503825A (zh) * 2014-12-29 2015-04-08 西安电子科技大学 一种基于kvm混合式设备虚拟化方法
CN105159753A (zh) * 2015-09-25 2015-12-16 华为技术有限公司 加速器虚拟化的方法、装置及集中资源管理器
CN106020425A (zh) * 2016-05-27 2016-10-12 浪潮(北京)电子信息产业有限公司 一种fpga异构加速计算系统
CN106681793A (zh) * 2016-11-25 2017-05-17 同济大学 一种基于kvm的加速器虚拟化数据处理系统及方法
CN106453126A (zh) * 2016-11-29 2017-02-22 郑州云海信息技术有限公司 一种虚拟机流量控制方法及装置

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108776648A (zh) * 2018-05-28 2018-11-09 郑州云海信息技术有限公司 数据传输方法、系统及fpga异构加速卡和存储介质
WO2020119189A1 (zh) * 2018-12-13 2020-06-18 郑州云海信息技术有限公司 一种多虚拟机共享fpga板卡的方法、系统及装置
US11928493B2 (en) 2018-12-13 2024-03-12 Zhengzhou Yunhai Information Technology Co., Ltd. Sharing of FPGA board by multiple virtual machines
CN109634627A (zh) * 2019-01-23 2019-04-16 郑州云海信息技术有限公司 基于OpenStack平台管理FPGA设备的方法
CN109634627B (zh) * 2019-01-23 2022-02-18 郑州云海信息技术有限公司 基于OpenStack平台管理FPGA设备的方法
CN110018873A (zh) * 2019-03-31 2019-07-16 山东超越数控电子股份有限公司 一种基于fpga优化虚拟桌面传输的方法
CN111104363A (zh) * 2019-12-27 2020-05-05 浪潮(北京)电子信息产业有限公司 一种fpga云平台使用方法、装置、设备、介质
CN111104363B (zh) * 2019-12-27 2022-04-22 浪潮(北京)电子信息产业有限公司 一种fpga云平台使用方法、装置、设备、介质
CN113220423A (zh) * 2021-06-04 2021-08-06 恒为科技(上海)股份有限公司 一种基于容器的多芯片管理方法和装置
CN114978676A (zh) * 2022-05-20 2022-08-30 江苏新质信息科技有限公司 基于FPGA、eBPF协同的数据包加解密方法及系统
CN114978676B (zh) * 2022-05-20 2024-03-12 江苏新质信息科技有限公司 基于FPGA、eBPF协同的数据包加解密方法及系统
CN116302314A (zh) * 2022-12-30 2023-06-23 天翼云科技有限公司 数据处理方法、装置、电子设备以及可读存储介质

Similar Documents

Publication Publication Date Title
CN107977256A (zh) 一种对fpga加速卡的访问方法、装置及介质
US10162661B2 (en) Interdependent virtual machine management
US8677484B2 (en) Providing protection against unauthorized network access
US9654603B1 (en) Client-side rendering for virtual mobile infrastructure
US9300720B1 (en) Systems and methods for providing user inputs to remote mobile operating systems
EP2879053A1 (en) Virtual machine memory data migration method, related apparatus, and cluster system
KR20210040293A (ko) 압력 테스트 방법, 장치, 전자기기 및 컴퓨터 판독가능 매체
US20140214922A1 (en) Method of providing virtual machine and service gateway for real-time virtual desktop service
US9213544B2 (en) Desktop shadowing in a virtual desktop infrastructure environment
US10673835B2 (en) Implementing single sign-on in a transaction processing system
US9122793B2 (en) Distributed debugging of an application in a distributed computing environment
US10031817B2 (en) Checkpoint mechanism in a compute embedded object storage infrastructure
JP2014529145A5 (zh)
US11503109B2 (en) Processing an operation with a plurality of processing steps
CN109656646B (zh) 一种远程桌面控制方法、装置、设备及虚拟化芯片
KR101680702B1 (ko) 클라우드 기반 웹 호스팅 시스템
US10067862B2 (en) Tracking asynchronous entry points for an application
CN112035282B (zh) 应用于云平台的api管理方法、装置、设备以及存储介质
US20200026565A1 (en) Generating metrics for quantifying computing resource usage
EP3113015B1 (en) Method and apparatus for data communication in virtualized environment
CN117034257A (zh) 一种虚拟化管理下的信息获取方法、装置、设备及介质
US11558207B2 (en) Method and apparatus for starting up blockchain system, and non-transitory computer-readable storage medium
KR20240021937A (ko) 보안 게스트의 증명
US10895597B2 (en) Secure coprocessor assisted hardware debugging
US9497253B2 (en) Authorization review system

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
WW01 Invention patent application withdrawn after publication
WW01 Invention patent application withdrawn after publication

Application publication date: 20180501