一种加速设备的控制方法、系统、装置及加速设备与流程

文档序号:37001244发布日期:2024-02-09 12:45阅读:19来源:国知局
一种加速设备的控制方法、系统、装置及加速设备与流程

本技术涉及虚拟化接口领域,特别涉及一种加速设备的控制方法、系统、装置及加速设备。


背景技术:

1、云计算技术的不断发展使得云端应用需求更加复杂多变,为满足这些需求,异构加速设备应运而生。异构加速设备是指特定用途的加速卡,如加解密加速卡、图像加速卡或视频加速卡等,用于加速特定的应用。然而,不同异构加速设备之间存在不同的实现机制和呈现的接口,导致应用与异构加速设备之间存在绑定关系,增加了云服务提供商对异构加速设备的接口的运维难度和代价。


技术实现思路

1、本技术的目的是提供一种加速设备的控制方法、系统、装置及加速设备,通过预先为加速设备配置一个虚拟化接口,并为各加速单元配置一一对应的寄存器访问接口,实现了对于具有多个加速单元的加速设备的调用。该方案使得主机端与异构加速设备之间脱离了绑定关系,减轻了云服务提供商对异构加速设备的接口的运维难度和代价。

2、为解决上述技术问题,本技术提供了一种加速设备的控制方法,应用于包括至少一个加速单元的加速设备,所述加速设备配置有一个虚拟化接口,所述虚拟化接口至少包括与至少一个所述加速单元一一对应的寄存器访问接口,所述方法包括:

3、获取主机端发送的计算指令,确定与所述计算指令对应的目标加速单元;

4、通过所述虚拟化接口访问与所述目标加速单元对应的寄存器访问接口,以调用所述目标加速单元对应的寄存器,执行与所述计算指令对应的计算任务。

5、在一个实施例中,还包括:

6、生成虚拟化接口-加速单元的初始化配置表。

7、在一个实施例中,确定与所述计算指令对应的目标加速单元,包括:

8、提取所述计算指令中所述加速单元的身份信息,所述身份信息表征所述加速单元的功能;

9、根据所述身份信息及所述初始化配置表确定所述目标加速单元。

10、在一个实施例中,所述加速设备配置寄存器访问接口的过程包括:

11、预先为所述寄存器访问接口配置预设地址,以存储各个所述加速单元对应的寄存器访问接口的配置信息。

12、在一个实施例中,预先为所述寄存器访问接口配置预设地址时,遵循虚拟化输入/输出设备规范。

13、在一个实施例中,所述配置信息至少包括:所述加速单元的身份信息、预先为所述加速单元配置的可用存储空间范围的参数、用于表征所述加速单元的地址的寄存器信息。

14、在一个实施例中,所述预先为所述加速单元配置的可用存储空间范围的参数包括存储空间的起始地址和存储空间长度。

15、在一个实施例中,用于表征所述加速单元的地址的寄存器信息包括所述加速单元对应的基址寄存器、在所述基址寄存器上的偏移量和寄存器长度。

16、在一个实施例中,所述虚拟化接口中还包括数据传输接口时,还包括:

17、通过所述数据传输接口与所述主机端进行数据传输。

18、在一个实施例中,获取主机端发送的计算指令,包括:

19、通过所述数据传输接口获取所述主机端发送的所述计算指令。

20、在一个实施例中,所述数据传输接口用于通过报文传输数据,所述报文的结构至少包括请求头部和数据部,其中,所述请求头部包括用于表征读出或者写入的请求类型和目标访问存储空间范围,所述数据部包括待处理数据的地址。

21、在一个实施例中,执行与所述计算指令对应的计算任务,包括:

22、通过所述数据传输接口接收所述主机端发送的报文;

23、根据所述请求类型、目标访问存储空间范围及所述待处理器数据的地址对所述待处理数据进行处理。

24、在一个实施例中,所述加速单元对应的寄存器至少包括待计算数据的待处理地址寄存器、用于存放计算结果的结果地址寄存器和用于启动计算的控制寄存器;

25、根据所述请求类型、目标访问存储空间范围及所述待处理器数据的地址对所述待处理数据进行处理,包括:

26、根据所述待计算数据的地址对所述主机端中存储的待计算数据进行读取;

27、将读取后的所述待计算数据存储至目标访问存储空间中,并将所述目标访问存储空间中用于存储所述待计算数据的地址写入所述待处理地址寄存器中;

28、接收所述主机端发送的计算启动指令;

29、根据所述计算启动指令通过所述控制寄存器启动计算,以根据所述待处理地址寄存器中存储的地址以及所述目标访问存储空间中存储的所述待计算数据得到计算结果;

30、为所述计算结果分配地址,并将分配的地址写入所述结果地址寄存器中,将所述计算结果存储至与所述结果地址寄存器中存储的地址对应的所述目标访问存储空间中;

31、触发所述主机端根据所述结果地址寄存器中存储的地址将所述计算结果通过所述数据传输接口读出。

32、在一个实施例中,所述报文的结构还包括状态标志位,通过所述数据传输接口与所述主机端进行数据传输之后,还包括:

33、判断数据是否传输成功,若成功,则将所述状态标志位设为第一状态,否则将所述状态标志位设为第二状态,以将所述数据传输状态反馈至所述主机端。

34、在一个实施例中,所述虚拟化接口中还包括中断接口,所述方法还包括:

35、在自身产生中断时,通过所述中断接口将中断信息反馈至主机端,以触发所述主机端对所述中断信息进行处理;

36、所述中断信息表征所述加速设备产生中断的类型。

37、在一个实施例中,所述中断接口配置为事件队列,则在自身产生中断时,通过所述中断接口将中断信息反馈至主机端,以触发所述主机端对所述中断信息进行处理,包括:

38、在自身产生中断时,生成所述中断信息,并将所述中断信息写入所述事件队列中;

39、触发所述主机端读取所述事件队列中的所述中断信息,以便所述主机端对所述中断信息进行处理。

40、在一个实施例中,在所述加速设备中包括多个所述加速单元时,所述中断接口配置为多个与所述加速单元一一对应的事件队列。

41、为解决上述技术问题,本技术还提供了一种加速设备的控制系统,应用于包括至少一个加速单元的加速设备,所述加速设备配置有一个虚拟化接口,所述虚拟化接口至少包括与至少一个所述加速单元一一对应的寄存器访问接口,所述系统包括:

42、确定单元,用于获取主机端发送的计算指令,确定与所述计算指令对应的目标加速单元;

43、计算单元,用于通过所述虚拟化接口访问与所述目标加速单元对应的寄存器访问接口,以调用所述目标加速单元对应的寄存器,执行与所述计算指令对应的计算任务。

44、为解决上述技术问题,本技术还提供了一种加速设备的控制装置,包括:

45、存储器,用于存储计算机程序;

46、处理器,用于在存储计算机程序时,实现如上述所述的加速设备的控制方法的步骤。

47、为解决上述技术问题,本技术还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现如上述所述的加速设备的控制方法的步骤。

48、为解决上述技术问题,本技术还提供了一种加速设备,用于实现如上述所述的加速设备的控制方法的步骤。

49、本技术提供了一种加速设备的控制方法、系统、装置及加速设备,涉及虚拟化接口领域。加速设备配置有一个虚拟化接口,虚拟化接口至少包括与至少一个加速单元一一对应的寄存器访问接口;获取主机端发送的计算指令,确定与计算指令对应的目标加速单元;通过与目标加速单元对应的寄存器访问接口调用目标加速单元对应的寄存器,以执行与计算指令对应的计算任务。通过预先为加速设备配置一个虚拟化接口,并为各加速单元配置一一对应的寄存器访问接口,实现了对于具有多个加速单元的加速设备的调用。该方案使得主机端与异构加速设备之间脱离了绑定关系,减轻了云服务提供商对异构加速设备的接口的运维难度和代价。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1