本发明涉及资源动态分配装置、资源动态分配程序、资源动态分配系统以及资源动态分配方法。
背景技术:
1、近年来,使用了按照ip核(intellectual property core:知识产权核)单位搭载有多个推理用卷积神经网络的加速器。这样的加速器能在多个用例中使用。
2、加速器具有多个向cpu(central processing unit:中央处理器)发送数据的发送队列或从cpu接收数据的接收队列。加速器将各接收队列的数据独立且并行地处理,使其返回至对应的发送队列。并且,执行构成应用进程的线程的cpu核向加速器轮询发送/轮询接收数据。
3、dpdk(data plane development kit:数据平面开发套件)等以轮询模式将数据传输至加速器的现有应用通过在应用内详细描述nic(network interface card:网络接口卡)逻辑队列、逻辑cpu核、acc(accelerator:加速器)逻辑队列的使用方法并且在启动应用的初始化时将它们与物理资源绑定来工作。
4、例如,通过dpdk和fpga(field-programmable gate array:现场可编程门阵列)来对vran(virtualized radio access network:虚拟化无线接入网络)等网络应用进行加速的情况等符合上述前提。
5、现有技术文献
6、非专利文献
7、非专利文献1:“data plane development kit(dpdk),16.wireless basebanddevice library(数据平面开发工具包(dpdk),16.无线基带设备库)”,[在线],[检索于2021年6月18日],互联网<url:https://doc.dpdk.org/guides/prog_guide/bbdev.html>
技术实现思路
1、发明所要解决的问题
2、在此,在应用进程使用加速器等物理资源时,存在以下两个问题。
3、第一问题是效率性。当在初始化时将物理资源分配给应用进程时,所分配的物理资源转移至应用进程的管理下。从性能、安全方面出发,分配给某个应用进程的物理资源无法被分配给其他应用进程直至该整个应用进程停止。即,在重新利用物理资源时,需要使包括运转中的处理在内的所有线程停止。即,在即使物理资源被分配给应用进程,该物理资源却不被使用的情况下,物理资源的运转效率会下降。
4、第二问题是通用性。若通过应用程序来不仅支持初始化时的资源连接和分离,还支持运转中的动态的资源连接和分离,则虽然可解决第一问题,但需要对所有应用程序的逻辑进行较大的变更。因此,期望能沿用现有应用程序的逻辑以使得具有通用性,并且能以不停止该应用进程的方式将未使用的物理资源从该应用进程分离并重新分配给其他应用进程。为了实现这一点,期望能不对甚至描述了cpu核、队列的使用方法的现有的应用进程的逻辑进行修改,而是通过平台侧的应对来实现效率化。
5、因此,本发明的问题在于通过使各应用动态地使用搭载于物理服务器的物理资源来使资源效率最大化。
6、用于解决问题的方案
7、为了解决上述问题,本发明的资源动态分配装置的特征在于,具备:线程id获取部,获取启动时被初始化的应用进程的识别信息、构成所述应用进程并且被分配了物理服务器上的可用的物理资源的线程的识别信息、分配给所述线程的物理资源的识别信息;以及资源记录/分配部,使初始化的所述应用进程的所有线程冻结,根据传输通信量、资源负荷以及所述应用进程的负荷中的任一个来使所述线程冻结或者解除所述线程的冻结。
8、关于其他方案,将在具体实施方式中进行说明。
9、发明效果
10、根据本发明,能通过使各应用动态地使用搭载于物理服务器的物理资源来使资源效率最大化。
1.一种资源动态分配装置,其特征在于,具备:
2.根据权利要求1所述的资源动态分配装置,其特征在于,
3.根据权利要求2所述的资源动态分配装置,其特征在于,
4.根据权利要求3所述的资源动态分配装置,其特征在于,
5.根据权利要求1所述的资源动态分配装置,其特征在于,
6.一种资源动态分配程序,用于使计算机执行以下过程:
7.一种资源动态分配系统,其特征在于,具备:
8.一种资源动态分配方法,其特征在于,执行以下步骤: