CN115129481B - 一种计算资源分配方法、装置及电子设备 - Google Patents
一种计算资源分配方法、装置及电子设备 Download PDFInfo
- Publication number
- CN115129481B CN115129481B CN202211059352.5A CN202211059352A CN115129481B CN 115129481 B CN115129481 B CN 115129481B CN 202211059352 A CN202211059352 A CN 202211059352A CN 115129481 B CN115129481 B CN 115129481B
- Authority
- CN
- China
- Prior art keywords
- computing
- task
- ciphertext
- calculation
- specifications
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
- G06F21/6245—Protecting personal data, e.g. for financial or medical purposes
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2209/00—Indexing scheme relating to G06F9/00
- G06F2209/50—Indexing scheme relating to G06F9/50
- G06F2209/5021—Priority
Abstract
本申请公开了一种计算资源分配方法、装置及电子设备,涉及多方安全计算技术领域和隐私计算技术领域,包括:获取待执行的密文计算任务的算力规格偏好信息,算力规格偏好信息表示用户对于执行密文计算任务所采用的计算资源的算力规格偏好;获取各种算力规格的计算资源的算力折算系数;基于各种算力规格的计算资源的算力折算系数,按照算力规格偏好信息,从各种算力规格中选择多种算力规格进行分配优先级排序,得到多种算力规格的计算资源的分配优先级顺序;按照分配优先级顺序,为该密文计算任务分配计算资源。采用该方案,使得使用分配的计算资源执行密文计算任务可以更满足用户预期、符合用户偏好。
Description
技术领域
本申请涉及多方安全计算技术领域和隐私计算技术领域,尤其涉及一种计算资源分配方法、装置及电子设备。
背景技术
多方安全计算(MPC,Muti-Party Computation),可以使多个非互信数据库之间在数据相互保密的前提下进行数据计算或融合,计算往往通过执行密文计算任务实现,密文计算任务是使用多方安全计算技术实行的数据计算任务,所有的计算过程都是在数据相互保密的前提下进行的。
在实际应用中,多方安全技术通常应用于隐私保护型数据交易市场,其属于底层使用隐私保护计算技术来完成数字商品交付环节的新型数据交易市场(网络平台)。买家收到的并不是原始的明文数据,而是原始数据经隐私保护计算后的计算结果。
目前,多方安全计算系统通常采用TM(Task Manager,任务管理器)进行密文计算任务的调度工作。当有客户端提交新的密文计算任务时,TM可以在算力资源集群中选择一组合适的计算节点,作为分配给该密文计算任务的计算资源,用于执行该密文计算任务,即将该密文计算任务发到该组计算节点上,执行具体的密文计算任务。
现有的基于TM的任务调度机制在进行任务调度时,主要的依据是算力资源集群中计算节点资源的可用性,采用所分配的计算资源执行密文计算任务,经常存在无法满足用户预期、不符合用户偏好的问题。
发明内容
本申请实施例提供一种计算资源分配方法、装置及电子设备,用以解决现有技术中存在的由于计算资源分配不合理导致执行密文计算任务无法满足用户预期、不符合用户偏好的问题。
本申请实施例提供一种计算资源分配方法,包括:
获取待执行的密文计算任务的算力规格偏好信息,所述算力规格偏好信息表示用户对于执行所述密文计算任务所采用的计算资源的算力规格偏好;
获取各种算力规格的计算资源的算力折算系数,一种算力规格的计算资源的算力折算系数为采用该计算资源与采用标准算力规格的标准计算资源执行相同计算任务的时长比;
基于各种算力规格的计算资源的算力折算系数,按照所述算力规格偏好信息,从所述各种算力规格中选择多种算力规格进行分配优先级排序,得到所述多种算力规格的计算资源的分配优先级顺序;
按照所述分配优先级顺序,为所述密文计算任务分配计算资源。
进一步的,所述基于各种算力规格的计算资源的算力折算系数,按照所述算力规格偏好信息,从所述各种算力规格中选择多种算力规格进行分配优先级排序,包括:
当算力规格偏好信息表示用户对于执行所述密文计算任务的要求是时长优先时,按照所述算力规格偏好信息,按照算力折算系数从低到高,从所述各种算力规格中选择多种算力规格进行分配优先级排序。
进一步的,在所述基于各种算力规格的计算资源的算力折算系数,按照所述算力规格偏好信息,从所述各种算力规格中选择多种算力规格进行分配优先级排序之前,还包括:
预估采用标准算力规格的标准计算资源执行所述密文计算任务所需花费的时长,作为标准预估时长;
所述基于各种算力规格的计算资源的算力折算系数,按照所述算力规格偏好信息,从所述各种算力规格中选择多种算力规格进行分配优先级排序,包括:
当算力规格偏好信息表示用户对于执行所述密文计算任务的要求是代价优先时,分别计算各种算力规格的计算资源的算力折算系数乘以所述标准预估时长,得到采用各种算力规格的计算资源执行所述密文计算任务所需花费的预估时长;
分别计算各种算力规格的计算资源的单位时长使用代价乘以各自的所述预估时长,得到采用各种算力规格的计算资源执行所述密文计算任务所需花费的预估代价;
按照预估代价从低到高,从所述各种算力规格中选择多种算力规格进行分配优先级排序。
进一步的,在所述基于各种算力规格的计算资源的算力折算系数,按照所述算力规格偏好信息,从所述各种算力规格中选择多种算力规格进行分配优先级排序之前,还包括:
预估采用标准算力规格的标准计算资源执行所述密文计算任务所需花费的时长,作为标准预估时长;
所述方法,还包括:
当所述标准预估时长不大于预设时长时,将所述密文计算任务加入短任务队列中;
当所述标准预估时长大于所述预设时长时,将所述密文计算任务加入长任务队列中;
所述按照所述分配优先级顺序,为所述密文计算任务分配计算资源,包括:
当所述密文计算任务位于所述短任务队列中时,按照所述分配优先级顺序,优先从所述短任务队列对应的短任务算力资源中,为所述密文计算任务分配计算资源,当所述短任务队列对应的短任务算力资源不足时,从所述长任务队列对应的长任务算力资源中,为所述密文计算任务分配计算资源;
当所述密文计算任务位于所述长任务队列中时,按照所述分配优先级顺序,从所述长任务队列对应的长任务算力资源中,为所述密文计算任务分配计算资源。
进一步的,所述预估采用标准算力规格的标准计算资源执行所述密文计算任务所需花费的时长,作为标准预估时长,包括:
对执行所述密文计算任务的算法脚本文件进行扫描,得到所述密文计算任务的代码量数据;
将所述代码量数据、所述密文计算任务的输入数据的输入数据参数和所述密文计算任务的任务配置参数,输入预先训练得到的时长预估模型,得到采用标准算力规格的标准计算资源执行所述密文计算任务所需花费的标准预估时长,所述时长预估模型为人工智能网络模型,所述时长预估模型为基于执行密文计算任务的历史数据训练得到的。
进一步的,所述密文计算任务的代码量数据,至少包括如下数据之一:
所述算法脚本文件中程序的总行数、封装的内部函数数量、使用的密文基本运算的数量、使用的密文计算API及数量、使用的明文计算API及数量、循环体的数量;
所述密文计算任务的输入数据的输入数据参数,至少包括如下参数之一:
所述输入数据的数据源类型、行数、列数、数据类型;
所述密文计算任务的任务配置参数,至少包括如下参数之一:
任务模式、计算节点要求。
本申请实施例还提供一种计算资源分配装置,包括:
信息获取模块,用于获取待执行的密文计算任务的算力规格偏好信息,所述算力规格偏好信息表示用户对于执行所述密文计算任务所采用的计算资源的算力规格偏好;
系数获取模块,用于获取各种算力规格的计算资源的算力折算系数,一种算力规格的计算资源的算力折算系数为采用该计算资源与采用标准算力规格的标准计算资源执行相同计算任务的时长比;
优先级排序模块,用于基于各种算力规格的计算资源的算力折算系数,按照所述算力规格偏好信息,从所述各种算力规格中选择多种算力规格进行分配优先级排序,得到所述多种算力规格的计算资源的分配优先级顺序;
资源分配模块,用于按照所述分配优先级顺序,为所述密文计算任务分配计算资源。
进一步的,所述优先级排序模块,具体用于当算力规格偏好信息表示用户对于执行所述密文计算任务的要求是时长优先时,按照所述算力规格偏好信息,按照算力折算系数从低到高,从所述各种算力规格中选择多种算力规格进行分配优先级排序。
进一步的,还包括:
时长预估模块,用于预估采用标准算力规格的标准计算资源执行所述密文计算任务所需花费的时长,作为标准预估时长;
所述优先级排序模块,具体用于当算力规格偏好信息表示用户对于执行所述密文计算任务的要求是代价优先时,分别计算各种算力规格的计算资源的算力折算系数乘以所述标准预估时长,得到采用各种算力规格的计算资源执行所述密文计算任务所需花费的预估时长;
分别计算各种算力规格的计算资源的单位时长使用代价乘以各自的所述预估时长,得到采用各种算力规格的计算资源执行所述密文计算任务所需花费的预估代价;
按照预估代价从低到高,从所述各种算力规格中选择多种算力规格进行分配优先级排序。
进一步的,还包括:
时长预估模块,用于预估采用标准算力规格的标准计算资源执行所述密文计算任务所需花费的时长,作为标准预估时长;
队列分配模块,用于当所述标准预估时长不大于预设时长时,将所述密文计算任务加入短任务队列中;当所述标准预估时长大于所述预设时长时,将所述密文计算任务加入长任务队列中;
所述资源分配模块,具体用于当所述密文计算任务位于所述短任务队列中时,按照所述分配优先级顺序,优先从所述短任务队列对应的短任务算力资源中,为所述密文计算任务分配计算资源,当所述短任务队列对应的短任务算力资源不足时,从所述长任务队列对应的长任务算力资源中,为所述密文计算任务分配计算资源;
当所述密文计算任务位于所述长任务队列中时,按照所述分配优先级顺序,从所述长任务队列对应的长任务算力资源中,为所述密文计算任务分配计算资源。
进一步的,所述时长预估模块,具体用于对执行所述密文计算任务的算法脚本文件进行扫描,得到所述密文计算任务的代码量数据;
将所述代码量数据、所述密文计算任务的输入数据的输入数据参数和所述密文计算任务的任务配置参数,输入预先训练得到的时长预估模型,得到采用标准算力规格的标准计算资源执行所述密文计算任务所需花费的标准预估时长,所述时长预估模型为人工智能网络模型,所述时长预估模型为基于执行密文计算任务的历史数据训练得到的。
进一步的,所述密文计算任务的代码量数据,至少包括如下数据之一:
所述算法脚本文件中程序的总行数、封装的内部函数数量、使用的密文基本运算的数量、使用的密文计算API及数量、使用的明文计算API及数量、循环体的数量;
所述密文计算任务的输入数据的输入数据参数,至少包括如下参数之一:
所述输入数据的数据源类型、行数、列数、数据类型;
所述密文计算任务的任务配置参数,至少包括如下参数之一:
任务模式、计算节点要求。
本申请实施例还提供一种电子设备,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现上述任一计算资源分配方法。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一计算资源分配方法。
本申请实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一所述的XXXX方法。
本申请有益效果包括:
本申请实施例提供的方法中,用户在发起密文计算任务的计算请求时,提供了对于执行密文计算任务所采用的计算资源的算力规格偏好,并且,方法中针对各种算力规格的计算资源设定了算力折算系数,一种算力规格的计算资源的算力折算系数为采用该计算资源与采用标准算力规格的标准计算资源执行相同计算任务的时长比,即算力折算系数能够表示每种算力规格的计算资源的计算能力,进而可以基于各种算力规格的计算资源的算力折算系数,按照用户的算力规格偏好信息,从各种算力规格中选择多种算力规格进行分配优先级排序,得到多种算力规格的计算资源的分配优先级顺序,并按照该分配优先级顺序,为该密文计算任务分配计算资源。从而使得使用分配的计算资源执行该密文计算任务可以更满足用户预期、符合用户偏好。
本申请的其它特征和优点将在随后的说明书中阐述,并且,部分地从说明书中变得显而易见,或者通过实施本申请而了解。本申请的目的和其他优点可通过在所写的说明书、权利要求书、以及附图中所特别指出的结构来实现和获得。
附图说明
附图用来提供对本申请的进一步理解,并且构成说明书的一部分,与本申请实施例一起用于解释本申请,并不构成对本申请的限制。在附图中:
图1为本申请实施例提供的计算资源分配方法的流程图;
图2为本申请实施例中预估执行该密文计算任务所需花费的标准预估时长的流程;
图3为本申请实施例中隐私计算型数据交易市场的网络平台的计算管理模块的结构示意图;
图4为本申请另一实施例提供的计算资源分配方法的流程图;
图5为本申请实施例提供的计算资源分配装置的结构示意图;
图6为本申请另一实施例提供的计算资源分配装置的结构示意图;
图7为本申请另一实施例提供的计算资源分配装置的结构示意图;
图8为本申请实施例提供的电子设备的结构示意图。
具体实施方式
为了给出使得使用分配的计算资源执行密文计算任务可以更满足用户预期、符合用户偏好的实现方案,本申请实施例提供了一种计算资源分配方法、装置及电子设备,以下结合说明书附图对本申请的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本申请,并不用于限定本申请。并且在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
本申请实施例提供一种计算资源分配方法,如图1所示,包括:
步骤11、获取待执行的密文计算任务的算力规格偏好信息,算力规格偏好信息表示用户对于执行密文计算任务所采用的计算资源的算力规格偏好;
步骤12、获取各种算力规格的计算资源的算力折算系数,一种算力规格的计算资源的算力折算系数为采用该计算资源与采用标准算力规格的标准计算资源执行相同计算任务的时长比;
步骤13、基于各种算力规格的计算资源的算力折算系数,按照算力规格偏好信息,从各种算力规格中选择多种算力规格进行分配优先级排序,得到多种算力规格的计算资源的分配优先级顺序;
步骤14、按照分配优先级顺序,为该密文计算任务分配计算资源。
采用本申请实施例提供的上述方法,用户在发起密文计算任务的计算请求时,提供了对于执行密文计算任务所采用的计算资源的算力规格偏好,并且,方法中针对各种算力规格的计算资源设定了算力折算系数,一种算力规格的计算资源的算力折算系数为采用该计算资源与采用标准算力规格的标准计算资源执行相同计算任务的时长比,即算力折算系数能够表示每种算力规格的计算资源的计算能力,进而可以基于各种算力规格的计算资源的算力折算系数,按照用户的算力规格偏好信息,从各种算力规格中选择多种算力规格进行分配优先级排序,得到多种算力规格的计算资源的分配优先级顺序,并按照该分配优先级顺序,为该密文计算任务分配计算资源。从而使得使用分配的计算资源执行该密文计算任务可以更满足用户预期、符合用户偏好。
下面结合附图,用具体实施例对本申请提供的方法及装置进行详细描述。
本申请实施例中,针对待执行的密文计算任务,在为其分配计算资源之前,可以先预估采用标准算力规格的标准计算资源执行该密文计算任务所需花费的时长,作为标准预估时长,用于后续为该密文计算任务分配计算资源,下面先对该标准预估时长的预估流程进行描述。
如图2所示,预估执行该密文计算任务所需花费的标准预估时长的流程,可以包括如下步骤:
步骤21、获取待执行的密文计算任务的算法脚本文件。
算法脚本文件中包含了该密文计算任务的密文计算程序,其为描述密文计算任务具体执行方式的程序代码。可以采取已有的编程语言(比如Python)编写,但是代码的实际运算执行过程是在数据相互保密的前提下,基于多方安全计算技术来完成的。
步骤22、对该密文计算任务的算法脚本文件进行扫描,得到该密文计算任务的代码量数据。
本申请实施例中,进行扫描所得到的代码量数据,具体可以至少包括如下数据之一:
算法脚本文件中程序的总行数、封装的内部函数数量、使用的密文基本运算的数量、使用的密文计算API及数量、使用的明文计算API及数量、循环体的数量;
在密文计算任务的执行过程当中,上述各种代码量数据均可以影响执行密文计算任务所需花费的时长。
步骤23、获取该密文计算任务的输入数据的输入数据参数,以及该密文计算任务的任务配置参数。
本申请实施例中,该密文计算任务的输入数据的输入数据参数,至少可以包括如下参数之一:
输入数据的数据源类型、行数、列数、数据类型;
该密文计算任务的任务配置参数,至少可以包括如下参数之一:
任务模式、计算节点要求。
在密文计算任务的执行过程当中,上述各种输入数据参数和任务配置参数,均可以影响执行密文计算任务所需花费的时长。
上述步骤22和步骤23的执行,没有严格的先后顺序。
步骤24、将扫描得到的代码量数据,获取的该密文计算任务的输入数据参数和任务配置参数,输入预先训练得到的时长预估模型,得到采用标准算力规格的标准计算资源执行该密文计算任务所需花费的标准预估时长。
本申请实施例中,所采用的时长预估模型为人工智能网络模型,该时长预估模型为基于执行密文计算任务的历史数据训练得到的。
本申请实施例中,所采用的人工智能网络模型的结构,可以为各种可行的网络模型结构,例如,可以采用决策树等网络模型结构。
本申请实施例中,针对待执行的该密文计算任务,在后续执行完毕后,可以使用实际花费的时长,用于训练该时长预估模型,以便进一步优化该时长预估模型,使得该时长预估模型对于密文计算任务的标准预估时长的预估更准确。
在实际应用中,可以在隐私计算型数据交易市场的网络平台的计算管理模块中,增加相应的功能模块,用于执行上述图2所示的流程,例如,如图3所示,计算管理模块可以包括:
密文算法扫描模块,用于对该密文计算任务的算法脚本文件进行扫描,得到该密文计算任务的代码量数据;
模型训练模块,用于基于执行密文计算任务的历史数据,对时长预估模型进行训练;
时长预估模块,用于针对该密文计算任务,使用训练的时长预估模型对该密文计算任务的标准预估时长进行预估。
在实际应用中,一个密文计算任务可能需要执行多次,因此,针对同一个密文计算任务,在预估出该密文计算任务的标准预估时长后,可以进行保存,当该密文计算任务需要再次执行时,直接获取并使用。
基于上述预估的该密文计算任务的标准预估时长,本申请实施例提供一种计算资源分配方法,如图4所示,包括:
步骤41、针对待执行的密文计算任务,预估采用标准算力规格的标准计算资源执行该密文计算任务所需花费的时长,作为标准预估时长。
本步骤可以采用上述图2所示流程预估,也可以在之前已经预估过该密文计算任务的标准预估时长之后,直接获取。
步骤42、确定该标准预估时长是否大于预设时长,如果不大于预设时长,执行步骤43,如果大于预设时长,执行步骤44。
本申请实施例中,预设时长可以基于实际需要进行灵活设置,例如,可以是30秒,或者,也可以是60秒。
步骤43、当标准预估时长不大于预设时长时,将该密文计算任务加入短任务队列中。
步骤44、当标准预估时长大于预设时长时,将该密文计算任务加入长任务队列中。
本申请实施例中,通过上述步骤42-44,基于标准预估时长,将密文计算任务所加入的队列进行了区分,短任务队列中包括的是标准预估时长相对较短的密文计算任务,长任务队列中包括的是标准预估时长相对较长的密文计算任务。
步骤45、获取待执行的密文计算任务的算力规格偏好信息,算力规格偏好信息表示用户对于执行密文计算任务所采用的计算资源的算力规格偏好。
本申请实施例中,算力规格偏好信息表示用户对于执行密文计算任务所采用的计算资源的算力规格偏好,由于采用不同算力规格的计算资源执行密文计算任务,将得到不同的计算过程,也即可能花费不同的时长和代价(例如,费用),所以,算力规格偏好信息,也可以表示用户对于执行密文计算任务的预期和偏好,例如,期望执行密文计算任务所花费时长越短越好,或者,期望执行密文计算任务所花费的代价越低越好。
本申请实施例中,算力规格偏好信息具体可以表示用户对于执行该密文计算任务的要求是时长优先,或者,是代价优先,时长优先和代价优先是相对的两种信息。
步骤46、获取各种算力规格的计算资源的算力折算系数,一种算力规格的计算资源的算力折算系数为采用该计算资源与采用标准算力规格的标准计算资源执行相同计算任务的时长比。
本申请实施例中,按照提供计算资源的计算节点的硬件属性,可以对计算资源的算力规格进行区分,首先,可以定义一个标准算力规格,例如,CPU为1核1GHz,内存为4G。
并且,可以将标准算力规格的计算资源的算力折算系数设定为1,算力规格的计算资源的算力折算系数为采用该计算资源与采用标准算力规格的标准计算资源执行相同计算任务的时长比,例如,执行相同计算任务,采用标准算力规格的计算资源(CPU为1核1GHz,内存为4G)执行一个计算任务,时长为60秒(可以是多次执行统计出的平均时长),采用另一种算力规格的计算资源(如,CPU为1核2GHz,内存为8G)执行相同的该计算任务,时长为40秒(也可以是多次执行统计出的平均时长),则这种算力规格的算力折算系数为40/60等于2/3。
算力折算系数小于1,表示算力规格高于标准算力规格,算力折算系数大于1,表示算力规格低于标准算力规格。
步骤47、基于各种算力规格的计算资源的算力折算系数,按照算力规格偏好信息,从各种算力规格中选择多种算力规格进行分配优先级排序,得到多种算力规格的计算资源的分配优先级顺序。
本步骤中,按照算力规格偏好信息具体所表示的用户偏好,可以采用如下两种具体的执行方式:
第一种方式:当算力规格偏好信息表示用户对于执行该密文计算任务的要求是代价优先时,可以先分别计算各种算力规格的计算资源的算力折算系数乘以上述标准预估时长,得到采用各种算力规格的计算资源执行该密文计算任务所需花费的预估时长;
然后,分别计算各种算力规格的计算资源的单位时长使用代价乘以各自的预估时长,得到采用各种算力规格的计算资源执行该密文计算任务所需花费的预估代价;
然后,按照预估代价从低到高,从各种算力规格中选择多种算力规格进行分配优先级排序,例如,按照预估代价从低到高选择5-10种算力规格进行排序。
第二种方式:当算力规格偏好信息表示用户对于执行该密文计算任务的要求是时长优先时,按照该算力规格偏好信息,按照算力折算系数从低到高,从各种算力规格中选择多种算力规格进行分配优先级排序,例如,按照预估代价从低到高选择5-10种算力规格进行排序。
步骤48、当该密文计算任务位于短任务队列中时,在从短任务队列中提取该密文计算任务后,按照上述分配优先级顺序,优先从短任务队列对应的短任务算力资源中,为该密文计算任务分配计算资源,当短任务队列对应的短任务算力资源不足时,从长任务队列对应的长任务算力资源中,为该密文计算任务分配计算资源。
步骤49、当该密文计算任务位于长任务队列中时,在从长任务队列中按照上述分配优先级顺序,从长任务队列对应的长任务算力资源中,为该密文计算任务分配计算资源。
本申请实施例提供的上述计算资源分配方法中,基于各种算力规格的计算资源的算力折算系数,能够按照用户的算力规格偏好信息,例如,时长优先或代价优先,从各种算力规格中选择多种算力规格进行分配优先级排序,得到多种算力规格的计算资源的分配优先级顺序,并按照该分配优先级顺序,为该密文计算任务分配计算资源。从而使得使用分配的计算资源执行该密文计算任务可以更满足用户预期、符合用户偏好。
并且,还可以按照对待执行的密文计算任务的执行时长进行预估,并按照预估结果将该密文计算任务加入到短任务队列或长任务队列中,并且,针对短任务队列和长任务队列,分别预先设定了对应的短任务算力资源和长任务算力资源,对于短任务队列中的密文计算任务,优先从短任务算力资源中为其分配计算资源,当短任务算力资源不足时,也可以从长任务队列资源中为其分配计算资源,从而能够尽快的完成标准预估时长相对较短的密文计算任务的执行,避免等待过长时间,可以明显提高用户体验。
并且,本申请实施例中,可以采用基于人工智能网络的时长预估模型,对密文计算任务的标准预估时长进行预估,从而可以得到更准确的预估时长。
进一步的,在本申请实施例中,当执行完密文计算任务后,可以获取执行该密文计算任务所花费的实际时长,并将该实际时长按照所采用的计算资源的算力折算系数,计算出如果采用标准算力规格的计算资源执行该密文计算任务将要花费的实际时长,并用于对该时长预估模型的进一步训练,从而实现对该时长预估模型的优化,进一步提高该时长预估模型的预估准确性。
基于同一发明构思,根据本申请上述实施例提供的计算资源分配方法,相应地,本申请另一实施例还提供了一种计算资源分配装置,其结构示意图如图5所示,具体包括:
信息获取模块51,用于获取待执行的密文计算任务的算力规格偏好信息,所述算力规格偏好信息表示用户对于执行所述密文计算任务所采用的计算资源的算力规格偏好;
系数获取模块52,用于获取各种算力规格的计算资源的算力折算系数,一种算力规格的计算资源的算力折算系数为采用该计算资源与采用标准算力规格的标准计算资源执行相同计算任务的时长比;
优先级排序模块53,用于基于各种算力规格的计算资源的算力折算系数,按照所述算力规格偏好信息,从所述各种算力规格中选择多种算力规格进行分配优先级排序,得到所述多种算力规格的计算资源的分配优先级顺序;
资源分配模块54,用于按照所述分配优先级顺序,为所述密文计算任务分配计算资源。
进一步的,所述优先级排序模块53,具体用于当算力规格偏好信息表示用户对于执行所述密文计算任务的要求是时长优先时,按照所述算力规格偏好信息,按照算力折算系数从低到高,从所述各种算力规格中选择多种算力规格进行分配优先级排序。
进一步的,如图6所示,该装置还包括:
时长预估模块55,用于预估采用标准算力规格的标准计算资源执行所述密文计算任务所需花费的时长,作为标准预估时长;
所述优先级排序模块53,具体用于当算力规格偏好信息表示用户对于执行所述密文计算任务的要求是代价优先时,分别计算各种算力规格的计算资源的算力折算系数乘以所述标准预估时长,得到采用各种算力规格的计算资源执行所述密文计算任务所需花费的预估时长;
分别计算各种算力规格的计算资源的单位时长使用代价乘以各自的所述预估时长,得到采用各种算力规格的计算资源执行所述密文计算任务所需花费的预估代价;
按照预估代价从低到高,从所述各种算力规格中选择多种算力规格进行分配优先级排序。
进一步的,如图7所示,该装置还包括:
时长预估模块55,用于预估采用标准算力规格的标准计算资源执行所述密文计算任务所需花费的时长,作为标准预估时长;
队列分配模块56,用于当所述标准预估时长不大于预设时长时,将所述密文计算任务加入短任务队列中;当所述标准预估时长大于所述预设时长时,将所述密文计算任务加入长任务队列中;
所述资源分配模块54,具体用于当所述密文计算任务位于所述短任务队列中时,按照所述分配优先级顺序,优先从所述短任务队列对应的短任务算力资源中,为所述密文计算任务分配计算资源,当所述短任务队列对应的短任务算力资源不足时,从所述长任务队列对应的长任务算力资源中,为所述密文计算任务分配计算资源;
当所述密文计算任务位于所述长任务队列中时,按照所述分配优先级顺序,从所述长任务队列对应的长任务算力资源中,为所述密文计算任务分配计算资源。
进一步的,所述时长预估模块55,具体用于对执行所述密文计算任务的算法脚本文件进行扫描,得到所述密文计算任务的代码量数据;
将所述代码量数据、所述密文计算任务的输入数据的输入数据参数和所述密文计算任务的任务配置参数,输入预先训练得到的时长预估模型,得到采用标准算力规格的标准计算资源执行所述密文计算任务所需花费的标准预估时长,所述时长预估模型为人工智能网络模型,所述时长预估模型为基于执行密文计算任务的历史数据训练得到的。
进一步的,所述密文计算任务的代码量数据,至少包括如下数据之一:
所述算法脚本文件中程序的总行数、封装的内部函数数量、使用的密文基本运算的数量、使用的密文计算API及数量、使用的明文计算API及数量、循环体的数量;
所述密文计算任务的输入数据的输入数据参数,至少包括如下参数之一:
所述输入数据的数据源类型、行数、列数、数据类型;
所述密文计算任务的任务配置参数,至少包括如下参数之一:
任务模式、计算节点要求。
上述各模块的功能可对应于图1至图4所示流程中的相应处理步骤,在此不再赘述。
本申请的实施例所提供的计算资源分配装置可通过计算机程序实现。本领域技术人员应该能够理解,上述的模块划分方式仅是众多模块划分方式中的一种,如果划分为其他模块或不划分模块,只要计算资源分配装置具有上述功能,都应该在本申请的保护范围之内。
本申请实施例还提供一种电子设备,如图8所示,包括处理器81和机器可读存储介质82,所述机器可读存储介质82存储有能够被所述处理器81执行的机器可执行指令,所述处理器81被所述机器可执行指令促使:实现上述任一计算资源分配方法。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现上述任一计算资源分配方法。
本申请实施例还提供一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述任一计算资源分配方法。
上述电子设备中的机器可读存储介质可以包括随机存取存储器(Random AccessMemory,RAM),也可以包括非易失性存储器(Non-Volatile Memory,NVM),例如至少一个磁盘存储器。可选的,存储器还可以是至少一个位于远离前述处理器的存储装置。
上述的处理器可以是通用处理器,包括中央处理器(Central Processing Unit,CPU)、网络处理器(Network Processor,NP)等;还可以是数字信号处理器(Digital SignalProcessing,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。
本说明书中的各个实施例均采用相关的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、电子设备、计算机可读存储介质,计算机程序产品实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本申请是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种计算资源分配方法,其特征在于,包括:
获取待执行的密文计算任务的算力规格偏好信息,所述算力规格偏好信息表示用户对于执行所述密文计算任务所采用的计算资源的算力规格偏好,所述算力规格偏好信息表示用户对于执行所述密文计算任务的要求是时长优先,或者,表示用户对于执行所述密文计算任务的要求是代价优先;
获取各种算力规格的计算资源的算力折算系数,一种算力规格的计算资源的算力折算系数为采用该计算资源与采用标准算力规格的标准计算资源执行相同计算任务的时长比;
基于各种算力规格的计算资源的算力折算系数,按照所述算力规格偏好信息,从所述各种算力规格中选择多种算力规格进行分配优先级排序,得到所述多种算力规格的计算资源的分配优先级顺序;
按照所述分配优先级顺序,为所述密文计算任务分配计算资源。
2.如权利要求1所述的方法,其特征在于,所述基于各种算力规格的计算资源的算力折算系数,按照所述算力规格偏好信息,从所述各种算力规格中选择多种算力规格进行分配优先级排序,包括:
当算力规格偏好信息表示用户对于执行所述密文计算任务的要求是时长优先时,按照所述算力规格偏好信息,按照算力折算系数从低到高,从所述各种算力规格中选择多种算力规格进行分配优先级排序。
3.如权利要求1所述的方法,其特征在于,在所述基于各种算力规格的计算资源的算力折算系数,按照所述算力规格偏好信息,从所述各种算力规格中选择多种算力规格进行分配优先级排序之前,还包括:
预估采用标准算力规格的标准计算资源执行所述密文计算任务所需花费的时长,作为标准预估时长;
所述基于各种算力规格的计算资源的算力折算系数,按照所述算力规格偏好信息,从所述各种算力规格中选择多种算力规格进行分配优先级排序,包括:
当算力规格偏好信息表示用户对于执行所述密文计算任务的要求是代价优先时,分别计算各种算力规格的计算资源的算力折算系数乘以所述标准预估时长,得到采用各种算力规格的计算资源执行所述密文计算任务所需花费的预估时长;
分别计算各种算力规格的计算资源的单位时长使用代价乘以各自的所述预估时长,得到采用各种算力规格的计算资源执行所述密文计算任务所需花费的预估代价;
按照预估代价从低到高,从所述各种算力规格中选择多种算力规格进行分配优先级排序。
4.如权利要求1所述的方法,其特征在于,在所述基于各种算力规格的计算资源的算力折算系数,按照所述算力规格偏好信息,从所述各种算力规格中选择多种算力规格进行分配优先级排序之前,还包括:
预估采用标准算力规格的标准计算资源执行所述密文计算任务所需花费的时长,作为标准预估时长;
所述方法,还包括:
当所述标准预估时长不大于预设时长时,将所述密文计算任务加入短任务队列中;
当所述标准预估时长大于所述预设时长时,将所述密文计算任务加入长任务队列中;
所述按照所述分配优先级顺序,为所述密文计算任务分配计算资源,包括:
当所述密文计算任务位于所述短任务队列中时,按照所述分配优先级顺序,优先从所述短任务队列对应的短任务算力资源中,为所述密文计算任务分配计算资源,当所述短任务队列对应的短任务算力资源不足时,从所述长任务队列对应的长任务算力资源中,为所述密文计算任务分配计算资源;
当所述密文计算任务位于所述长任务队列中时,按照所述分配优先级顺序,从所述长任务队列对应的长任务算力资源中,为所述密文计算任务分配计算资源。
5.如权利要求3或4所述的方法,其特征在于,所述预估采用标准算力规格的标准计算资源执行所述密文计算任务所需花费的时长,作为标准预估时长,包括:
对执行所述密文计算任务的算法脚本文件进行扫描,得到所述密文计算任务的代码量数据;
将所述代码量数据、所述密文计算任务的输入数据的输入数据参数和所述密文计算任务的任务配置参数,输入预先训练得到的时长预估模型,得到采用标准算力规格的标准计算资源执行所述密文计算任务所需花费的标准预估时长,所述时长预估模型为人工智能网络模型,所述时长预估模型为基于执行密文计算任务的历史数据训练得到的。
6.如权利要求5所述的方法,其特征在于,所述密文计算任务的代码量数据,至少包括如下数据之一:
所述算法脚本文件中程序的总行数、封装的内部函数数量、使用的密文基本运算的数量、使用的密文计算API及数量、使用的明文计算API及数量、循环体的数量;
所述密文计算任务的输入数据的输入数据参数,至少包括如下参数之一:
所述输入数据的数据源类型、行数、列数、数据类型;
所述密文计算任务的任务配置参数,至少包括如下参数之一:
任务模式、计算节点要求。
7.一种计算资源分配装置,其特征在于,包括:
信息获取模块,用于获取待执行的密文计算任务的算力规格偏好信息,所述算力规格偏好信息表示用户对于执行所述密文计算任务所采用的计算资源的算力规格偏好,所述算力规格偏好信息表示用户对于执行所述密文计算任务的要求是时长优先,或者,表示用户对于执行所述密文计算任务的要求是代价优先;
系数获取模块,用于获取各种算力规格的计算资源的算力折算系数,一种算力规格的计算资源的算力折算系数为采用该计算资源与采用标准算力规格的标准计算资源执行相同计算任务的时长比;
优先级排序模块,用于基于各种算力规格的计算资源的算力折算系数,按照所述算力规格偏好信息,从所述各种算力规格中选择多种算力规格进行分配优先级排序,得到所述多种算力规格的计算资源的分配优先级顺序;
资源分配模块,用于按照所述分配优先级顺序,为所述密文计算任务分配计算资源。
8.如权利要求7所述的装置,其特征在于,所述优先级排序模块,具体用于当算力规格偏好信息表示用户对于执行所述密文计算任务的要求是时长优先时,按照所述算力规格偏好信息,按照算力折算系数从低到高,从所述各种算力规格中选择多种算力规格进行分配优先级排序。
9.一种电子设备,其特征在于,包括处理器和机器可读存储介质,所述机器可读存储介质存储有能够被所述处理器执行的机器可执行指令,所述处理器被所述机器可执行指令促使:实现权利要求1-6任一所述的方法。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质内存储有计算机程序,所述计算机程序被处理器执行时实现权利要求1-6任一所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211059352.5A CN115129481B (zh) | 2022-08-31 | 2022-08-31 | 一种计算资源分配方法、装置及电子设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211059352.5A CN115129481B (zh) | 2022-08-31 | 2022-08-31 | 一种计算资源分配方法、装置及电子设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115129481A CN115129481A (zh) | 2022-09-30 |
CN115129481B true CN115129481B (zh) | 2022-11-29 |
Family
ID=83387553
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211059352.5A Active CN115129481B (zh) | 2022-08-31 | 2022-08-31 | 一种计算资源分配方法、装置及电子设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115129481B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116382926B (zh) * | 2023-06-05 | 2023-08-22 | 支付宝(杭州)信息技术有限公司 | 针对推荐系统的算力优化的方法和装置 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112764938A (zh) * | 2021-02-02 | 2021-05-07 | 腾讯科技(深圳)有限公司 | 云服务器资源管理方法、装置、计算机设备和存储介质 |
CN113434284A (zh) * | 2021-08-27 | 2021-09-24 | 华控清交信息科技(北京)有限公司 | 一种隐私计算服务端设备、系统及任务调度方法 |
WO2021244343A1 (zh) * | 2020-06-01 | 2021-12-09 | 杭州嘉楠耘智信息科技有限公司 | 一种云算力分配方法、用户终端、云算力平台和系统 |
CN114780213A (zh) * | 2022-03-24 | 2022-07-22 | 深圳北鲲云计算有限公司 | 高性能计算云平台资源调度方法、系统及存储介质 |
-
2022
- 2022-08-31 CN CN202211059352.5A patent/CN115129481B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2021244343A1 (zh) * | 2020-06-01 | 2021-12-09 | 杭州嘉楠耘智信息科技有限公司 | 一种云算力分配方法、用户终端、云算力平台和系统 |
CN112764938A (zh) * | 2021-02-02 | 2021-05-07 | 腾讯科技(深圳)有限公司 | 云服务器资源管理方法、装置、计算机设备和存储介质 |
CN113434284A (zh) * | 2021-08-27 | 2021-09-24 | 华控清交信息科技(北京)有限公司 | 一种隐私计算服务端设备、系统及任务调度方法 |
CN114780213A (zh) * | 2022-03-24 | 2022-07-22 | 深圳北鲲云计算有限公司 | 高性能计算云平台资源调度方法、系统及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN115129481A (zh) | 2022-09-30 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Liu et al. | Online multi-workflow scheduling under uncertain task execution time in IaaS clouds | |
Nayak et al. | Deadline sensitive lease scheduling in cloud computing environment using AHP | |
US20200257968A1 (en) | Self-learning scheduler for application orchestration on shared compute cluster | |
US9135581B1 (en) | Resource constrained task scheduling | |
EP3348029B1 (en) | System and method for ensuring quality of service in a compute workflow | |
CN106959894B (zh) | 资源分配方法和装置 | |
US20110246653A1 (en) | Efficient provisioning of resources in public infrastructure for electronic design automation (eda) tasks | |
US20130339972A1 (en) | Determining an allocation of resources to a program having concurrent jobs | |
Genez et al. | Estimation of the available bandwidth in inter-cloud links for task scheduling in hybrid clouds | |
CN103701886A (zh) | 一种云计算环境下的服务及资源分层调度方法 | |
US20130268941A1 (en) | Determining an allocation of resources to assign to jobs of a program | |
CN109189572B (zh) | 一种资源预估方法及系统、电子设备和存储介质 | |
CN115129481B (zh) | 一种计算资源分配方法、装置及电子设备 | |
Nagarajan et al. | Flowflex: Malleable scheduling for flows of mapreduce jobs | |
Liu et al. | A heuristic QoS-aware service selection approach to web service composition | |
CN108874520A (zh) | 计算方法及装置 | |
CN106407007B (zh) | 面向弹性分析流程的云资源配置优化方法 | |
CN109934387A (zh) | 用于估测时间的方法、装置及电子设备 | |
Kang et al. | Scheduling multiple divisible loads in a multi-cloud system | |
Squillante et al. | Analysis of job arrival patterns and parallel scheduling performance | |
CN113205128A (zh) | 基于无服务器计算的分布式深度学习性能保证方法 | |
Liu et al. | A novel deadline assignment strategy for a large batch of parallel tasks with soft deadlines in the cloud | |
Partheeban et al. | Versatile provisioning and workflow scheduling in WaaS under cost and deadline constraints for cloud computing | |
CN115712501A (zh) | 一种适用于工程机械的云仿真方法和系统 | |
Peláez et al. | Online scheduling of deadline‐constrained bag‐of‐task workloads on hybrid clouds |
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 |