CN116302453B - 量子电子混合平台的任务调度方法及装置 - Google Patents
量子电子混合平台的任务调度方法及装置 Download PDFInfo
- Publication number
- CN116302453B CN116302453B CN202310571867.1A CN202310571867A CN116302453B CN 116302453 B CN116302453 B CN 116302453B CN 202310571867 A CN202310571867 A CN 202310571867A CN 116302453 B CN116302453 B CN 116302453B
- Authority
- CN
- China
- Prior art keywords
- node
- tasks
- virtual
- task
- time length
- 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
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/48—Program initiating; Program switching, e.g. by interrupt
- G06F9/4806—Task transfer initiation or dispatching
- G06F9/4843—Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
- G06F9/4881—Scheduling strategies for dispatcher, e.g. round robin, multi-level priority queues
-
- 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
- G06F9/5038—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 considering the execution order of a plurality of tasks, e.g. taking priority or time dependency constraints into consideration
-
- 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
- G06F9/505—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 considering the load
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N10/00—Quantum computing, i.e. information processing based on quantum-mechanical phenomena
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- Condensed Matter Physics & Semiconductors (AREA)
- Computational Mathematics (AREA)
- Artificial Intelligence (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (AREA)
- Mathematical Analysis (AREA)
- Mathematical Optimization (AREA)
- Pure & Applied Mathematics (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明提供了一种量子电子混合平台的任务调度方法及装置,涉及量子计算技术领域,其中方法包括:确定所述量子电子混合平台中每一个节点的当前运行状态;针对每一个节点,均执行:根据该节点的当前运行状态,确定为该节点调度指定数量的虚拟任务后完成每一个虚拟任务的预期时间;获取当前待调度的真实任务;根据每一个节点完成每一个虚拟任务的预期时间,对所述真实任务进行调度。本方案,能够提高任务处理效率。
Description
技术领域
本发明实施例涉及量子计算技术领域,特别涉及一种量子电子混合平台的任务调度方法及装置。
背景技术
量子计算机相较于传统的电子计算机具有较大优势。电子计算机只有0和1两种状态,而量子计算机可以包括0与1的相干叠加态,对于N个比特的计算机,量子计算机可以一次运算2N组数据,而电子计算机只能处理一组数据。因此,基于量子计算机的并行处理原理,量子计算机的计算速度相较于电子计算机更快。
目前都是量子计算机和电子计算机的混合平台,在进行任务调度时,是按照计算机的计算能力进行排序,并将任务分配给最大计算能力的计算机。然而,该方式会导致一段时间内最大计算能力的计算机被任务占满,另一部分计算机处于空闲或任务较少的状况,进而导致任务处理效率较低。
发明内容
本发明实施例提供了一种量子电子混合平台的任务调度方法及装置,能够提高任务处理效率。
第一方面,本发明实施例提供了一种量子电子混合平台的任务调度方法,包括:
确定所述量子电子混合平台中每一个节点的当前运行状态;
针对每一个节点,均执行:根据该节点的当前运行状态,确定为该节点调度指定数量的虚拟任务后完成每一个虚拟任务的预期时间;
获取当前待调度的真实任务;
根据每一个节点完成每一个虚拟任务的预期时间,对所述真实任务进行调度。
在一种可能的实现方式中,为不同节点调度虚拟任务的指定数量不同;在所述确定为该节点调度指定数量的虚拟任务后完成每一个虚拟任务的预期时间之前,还包括:
根据该节点的当前运行状态,确定该节点对当前已调度且未处理完成的任务所需的第一处理时长;
判断所述第一处理时长是否小于设定时间长度;若是,则确定在所述设定时间长度内可额外处理任务的最大数量;将该最大数量确定为该节点调度虚拟任务的指定数量。
在一种可能的实现方式中,所述确定在所述设定时间长度内可额外处理任务的最大数量,包括:
确定该节点是否为量子节点,若是,则确定该量子节点的量子线路数量,并确定该量子节点在剩余时间长度内单条量子线路可处理任务的最大数量,将该最大数量与量子线路数量的乘积确定为该量子节点在所述设定时间长度内可额外处理任务的最大数量;所述剩余时间长度为所述设定时间长度与所述第一处理时长的差值。
在一种可能的实现方式中,所述确定为该节点调度指定数量的虚拟任务后完成每一个虚拟任务的预期时间,包括:
确定该节点处理单个虚拟任务所需的第二处理时长;
根据所述第一处理时长、所述第二处理时长和为该节点调度的虚拟任务的指定数量,确定为该节点调度指定数量的虚拟任务后完成每一个虚拟任务的预期时间。
在一种可能的实现方式中,所述根据每一个节点完成每一个虚拟任务的预期时间,对所述真实任务进行调度,包括:
基于每一个节点完成每一个虚拟任务的预期时间,按照预期时间的先后顺序将虚拟任务进行排序;
基于所述真实任务的接收时间,按照接收时间的先后顺序将真实任务进行排序;
将排序后的真实任务和排序后的虚拟任务建立一一对应的映射关系;
根据所述映射关系将所述真实任务调度给与其相映射的虚拟任务所对应的节点。
在一种可能的实现方式中,所述将排序后的真实任务和排序后的虚拟任务建立一一对应的映射关系,包括:
将排序位置相同的真实任务和虚拟任务进行映射,得到初始映射关系;
确定所述初始映射关系中排序最后的至少一个目标虚拟任务是否对应同一个量子节点且对应的预期时间相同;
若是,则确定该至少一个目标虚拟任务的数量与该量子节点中量子线路数量的比值是否超过设定比值;若超过,则将所述初始映射关系作为建立的映射关系;若未超过,则按照排序位置从后及前的顺序确定所述初始映射关系中是否存在设定数量的虚拟任务对应电子节点,若存在,则将该设定数量的虚拟任务从排序中删除,并基于重新排序后的虚拟任务将排序位置相同的真实任务和虚拟任务进行映射,得到建立完成的映射关系。
在一种可能的实现方式中,所述设定数量与该至少一个目标虚拟任务的数量之和,与该量子节点中量子线路数量的比值,超过所述设定比值且不大于1。
第二方面,本发明实施例还提供了一种量子电子混合平台的任务调度装置,包括:
状态确定单元,用于确定所述量子电子混合平台中每一个节点的当前运行状态;
预期确定单元,用于针对每一个节点,均执行:根据该节点的当前运行状态,确定为该节点调度指定数量的虚拟任务后完成每一个虚拟任务的预期时间;
任务获取单元,用于获取当前待调度的真实任务;
任务调度单元,用于根据每一个节点完成每一个虚拟任务的预期时间,对所述真实任务进行调度。
第三方面,本发明实施例还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现本说明书任一实施例所述的方法。
第四方面,本发明实施例还提供了一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行本说明书任一实施例所述的方法。
本发明实施例提供了一种量子电子混合平台的任务调度方法及装置,通过确定量子电子混合平台中每一个节点的当前运行状态,从而可以根据运行状态确定出在为每一个节点调度指定数量的虚拟任务后完成每一个虚拟任务的预期时间,根据虚拟任务的预期时间来对真实任务进行调度,从而可以均衡各个节点的计算资源和负载状况,使得真实任务能够被尽快处理,从而可以提高任务处理效率。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一实施例提供的一种量子电子混合平台的任务调度方法流程图;
图2是本发明一实施例提供的一种电子设备的硬件架构图;
图3是本发明一实施例提供的一种量子电子混合平台的任务调度装置结构图;
图4是本发明一实施例提供的另一种量子电子混合平台的任务调度装置结构图。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例,基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参考图1,本发明实施例提供了一种量子电子混合平台的任务调度方法,该方法包括:
步骤100,确定所述量子电子混合平台中每一个节点的当前运行状态;
步骤102,针对每一个节点,均执行:根据该节点的当前运行状态,确定为该节点调度指定数量的虚拟任务后完成每一个虚拟任务的预期时间;
步骤104,获取当前待调度的真实任务;
步骤106,根据每一个节点完成每一个虚拟任务的预期时间,对所述真实任务进行调度。
本发明实施例中,通过确定量子电子混合平台中每一个节点的当前运行状态,从而可以根据运行状态确定出在为每一个节点调度指定数量的虚拟任务后完成每一个虚拟任务的预期时间,根据虚拟任务的预期时间来对真实任务进行调度,从而可以均衡各个节点的计算资源和负载状况,使得真实任务能够被尽快处理,从而可以提高任务处理效率。
下面描述图1所示的各个步骤的执行方式。
首先,针对步骤100“确定所述量子电子混合平台中每一个节点的当前运行状态”和步骤102“针对每一个节点,均执行:根据该节点的当前运行状态,确定为该节点调度指定数量的虚拟任务后完成每一个虚拟任务的预期时间”同时进行说明。
本发明实施例中,该量子电子混合平台中包括若干个量子节点和若干个电子节点,且量子电子混合平台中还包括用于执行本实施例中任务调度方法的调度节点,调度节点用于接收多个用户服务器分别发送的真实任务,由调度节点基于量子电子混合平台中各个节点的运行状态,将真实任务均衡调度给各个节点。
本发明实施例中,运行状态至少可以包括计算资源和负载状况。计算资源可以得出节点的进行任务处理的计算能力,负载状况为当前已调度但未处理完成的任务。
为了保证真实任务调度给相应节点后,节点对真实任务能够及时处理,提高真实任务的处理效率,本发明实施例中,可以确定出为该节点调度指定数量的虚拟任务后完成每一个虚拟任务的预期时间,从而按照虚拟任务的预期时间对真实任务进行调度。也就是说,若为每一个节点调度指定数量的虚拟任务,那么每一个虚拟任务均对应一个预期时间,比如,虚拟任务的数量为30个,将30个虚拟任务分别调度给三个节点,那么可以得到每一个节点对虚拟任务处理后,虚拟任务1-30的预期时间。
考虑到节点中可能存在当前已调度且未处理完成的任务,因此节点需要先对这些当前已调度且未处理完成的任务进行处理,当这些任务处理完成后才能够对其他任务进行处理,因此,若将当前需要调度的真实任务调度给该节点,则需要进行等待。并且,不同节点的计算资源和负载状态均不同,因此,为不同节点调度的虚拟任务的指定数量也可以不同。
本发明一个实施例中,为了确定向每一个节点调度虚拟任务的指定数量,可以针对每一个节点进行如下处理:
A1:根据该节点的当前运行状态,确定该节点对当前已调度且未处理完成的任务所需的第一处理时长;
A2:判断所述第一处理时长是否小于设定时间长度;若是,则确定在所述设定时间长度内可额外处理任务的最大数量;将该最大数量确定为该节点调度虚拟任务的指定数量。
在步骤A1中计算出每一个节点对当前已调度且未处理完成的任务所需的第一处理时长,该第一处理时长则为再次调度给节点的真实任务所需的等待时长。
在步骤A2中,若第一处理时长不小于设定时间长度时,则需要进行等待的时长较长,影响任务处理效率,则无需将当前待调度的真实任务调度给该节点。
其中,该设定时间长度的确定方式为:
针对每一个节点,均执行:将当前待调度的全部真实任务调度给该节点后,计算该节点处理完成该全部真实任务的第三处理时长,并计算该节点第四处理时长;所述第四处理时长为该节点的第一处理时长和第三处理时长之和;
将多个节点中的最小第四处理时长作为所述设定时间长度。
可见,若某个节点的第一处理时长小于该设定时间长度,则表明该节点还可以额外处理其他任务,若不小于该设定时间长度,则表明该节点尚未将已经调度且未处理完成的任务处理完,就存在一个节点能够将当前待调度的全部真实任务处理完成,可见,无需将新的真实任务调度给该节点。
通过上述方式确定设定时间长度,而不是任意的进行设定,可以避免设定时间长度过长造成所需调度的虚拟任务数量较多,导致计算量增加的问题,以及可以避免设定时间长度过短造成所需调度的虚拟任务数量较少,导致部分真实任务无法实现与虚拟任务的映射,进而影响真实任务的调度。
在本发明实施例中,由于量子节点和电子节点在处理任务时的处理速度不同,且量子节点每次可同时处理多组数据,因此,对于量子节点在确定最大数量时,具体地,确定在所述设定时间长度内可额外处理任务的最大数量,包括:
确定该节点是否为量子节点,若是,则确定该量子节点的量子线路数量,并确定该量子节点在剩余时间长度内单条量子线路可处理任务的最大数量,将该最大数量与量子线路数量的乘积确定为该量子节点在所述设定时间长度内可额外处理任务的最大数量;所述剩余时间长度为所述设定时间长度与所述第一处理时长的差值。
举例来说,该量子节点的量子线路数量为10条,即该量子节点每次最大可同时处理10个任务,而每条量子线路在剩余时间长度内可处理任务的最大数量为2个任务,那么该量子节点所对应的指定数量为20个。也就是说,若将20个虚拟任务调度给该量子节点,则将每两个虚拟任务分配给一个量子线路。
确定了每一个节点所对应的指定数量之后,在本发明一个实施例中,可以通过如下方式确定为该节点调度指定数量的虚拟任务后完成每一个虚拟任务的预期时间:
B1:确定该节点处理单个虚拟任务所需的第二处理时长;
B2:根据所述第一处理时长、所述第二处理时长和为该节点调度的虚拟任务的指定数量,确定为该节点调度指定数量的虚拟任务后完成每一个虚拟任务的预期时间。
对于电子节点,在步骤B2中,每一个虚拟任务的预期时间为:
Ti(i=1,2,…,n)=Ta+Tb×i。
其中,Ti为调度给该节点的指定数量n(n为正整数)的虚拟任务中第i个虚拟任务的预期时间,Ta为该节点对当前已调度且未处理完成的任务所需的第一处理时长,Tb为该节点处理单个虚拟任务所需的第二处理时长。
对于量子节点,在步骤B2中,预先将调度给该量子节点的指定数量n的虚拟任务平均分配为n/m组,其中n/m为正整数,m为该量子节点中的量子线路的数量,且为正整数,每一组中虚拟任务的预期时间为:
Tj(j=1,2,…,n/m)=Ta+Tb×j。
其中,Tj为调度给该节点的指定数量n(n为正整数)的虚拟任务中第j组虚拟任务的预期时间,Ta为该节点对当前已调度且未处理完成的任务所需的第一处理时长,Tb为该节点单条量子线路处理单个虚拟任务所需的第二处理时长。
最后针对步骤104“获取当前待调度的真实任务”和步骤106“根据每一个节点完成每一个虚拟任务的预期时间,对所述真实任务进行调度”同时说明。
当前待调度的真实任务是一个时间段内由若干个用户服务器发送来的,每一个真实任务对应一个接收时间。
本发明一个实施例中,可以通过如下一种方式对真实任务进行调度:
C1:基于每一个节点完成每一个虚拟任务的预期时间,按照预期时间的先后顺序将虚拟任务进行排序;
C2:基于所述真实任务的接收时间,按照接收时间的先后顺序将真实任务进行排序;
C3:将排序后的真实任务和排序后的虚拟任务建立一一对应的映射关系;
C4:根据所述映射关系将所述真实任务调度给与其相映射的虚拟任务所对应的节点。
可见,将虚拟任务按照预期时间的先后顺序进行排序以及将真实任务按照接收时间的先后顺序进行排序后,排在最前位置处的真实任务是最先接收到的,以及,排在最前位置处的虚拟任务将是最先被处理完成的,因此,基于先进先出的原则,可以将排序位置相同的真实任务和虚拟任务进行映射,得到映射关系。在按照该映射关系进行真实任务的调度后,最先接收到的真实任务则可被最先处理完成,如此可以保证任务处理的及时性。
考虑到量子节点在运行过程中的资源损耗较大,且为了保证量子节点计算资源的最大利用率,每次进行任务处理时能够尽可能将所有量子线路均使用上,由此,本发明一个实施例中,可以通过如下方式建立映射关系:
C31:将排序位置相同的真实任务和虚拟任务进行映射,得到初始映射关系;
由于虚拟任务的数量大于真实任务的数量,因此,初始映射关系中包含全部的真实任务以及部分虚拟任务。
C32:确定所述初始映射关系中排序最后的至少一个目标虚拟任务是否对应同一个量子节点且对应的预期时间相同;
若是,则确定该至少一个目标虚拟任务的数量与该量子节点中量子线路数量的比值是否超过设定比值;若超过,则将所述初始映射关系作为建立的映射关系;若未超过,则按照排序位置从后及前的顺序确定所述初始映射关系中是否存在设定数量的虚拟任务对应电子节点,若存在,则将该设定数量的虚拟任务从排序中删除,并基于重新排序后的虚拟任务将排序位置相同的真实任务和虚拟任务进行映射,得到建立完成的映射关系。
在步骤C32中,在确定初始映射关系中排序最后的至少一个目标虚拟任务是否对应同一个量子节点且对应的预期时间相同时,具体地,可以包括:判断初始映射关系中排序最后的一个虚拟任务是否对应量子节点,若是,则将该量子节点作为目标量子节点,将该排序最后的虚拟任务作为第一虚拟任务,对初始映射关系中排序最后的多个虚拟任务进行判断,是否存在与所述第一虚拟任务连续的至少一个第二虚拟任务同时对应所述目标量子节点,且所述第二虚拟任务与所述第一虚拟任务对应的预期时间相同,若存在,则将所述第一虚拟任务和至少一个所述第二虚拟任务作为目标虚拟任务;若不存在,则将所述第一虚拟任务作为目标虚拟任务。
其中,所述设定数量与该至少一个目标虚拟任务的数量之和,与该量子节点中量子线路数量的比值,超过所述设定比值且不大于1。
举例来说,10个待调度的真实任务按照接收时间的先后顺序进行排序后分别为P1、P2、P3、…、P10,30个虚拟任务按照预期时间的先后顺序进行排序后分别为Q1、Q2、Q3、…、Q30,那么初始映射关系如表1所示:
表1:
其中,虚拟任务Q8~Q10对应量子节点且预期时间相同,且该量子节点具有5条量子线路,此时该至少一个目标虚拟任务的数量与该量子节点中量子线路数量的比值为0.6,而设定比例为0.8,如此可以计算得到设定数量为1或2。其中,虚拟任务Q3和Q4对应电子节点,那么将虚拟任务Q3和Q4删除后,重新建立的映射关系如表2所示:
表2:
由此,可以将真实任务P6~P10调度给同一个量子节点,从而保证了量子节点计算资源的最大利用率,且能够保证各真实任务的处理效率。
如图2、图3所示,本发明实施例提供了一种量子电子混合平台的任务调度装置。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。从硬件层面而言,如图2所示,为本发明实施例提供的一种量子电子混合平台的任务调度装置所在电子设备的一种硬件架构图,除了图2所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的电子设备通常还可以包括其他硬件,如负责处理报文的转发芯片等等。以软件实现为例,如图3所示,作为一个逻辑意义上的装置,是通过其所在电子设备的CPU将非易失性存储器中对应的计算机程序读取到内存中运行形成的。本实施例提供的一种量子电子混合平台的任务调度装置,包括:
状态确定单元301,用于确定所述量子电子混合平台中每一个节点的当前运行状态;
预期确定单元302,用于针对每一个节点,均执行:根据该节点的当前运行状态,确定为该节点调度指定数量的虚拟任务后完成每一个虚拟任务的预期时间;
任务获取单元303,用于获取当前待调度的真实任务;
任务调度单元304,用于根据每一个节点完成每一个虚拟任务的预期时间,对所述真实任务进行调度。
在本发明一个实施例中,为不同节点调度虚拟任务的指定数量不同;请参考图4,该装置还可以包括:
数量确定单元305,用于根据该节点的当前运行状态,确定该节点对当前已调度且未处理完成的任务所需的第一处理时长;判断所述第一处理时长是否小于设定时间长度;若是,则确定在所述设定时间长度内可额外处理任务的最大数量;将该最大数量确定为该节点调度虚拟任务的指定数量。
在本发明一个实施例中,所述数量确定单元在确定在所述设定时间长度内可额外处理任务的最大数量时,具体包括:
确定该节点是否为量子节点,若是,则确定该量子节点的量子线路数量,并确定该量子节点在剩余时间长度内单条量子线路可处理任务的最大数量,将该最大数量与量子线路数量的乘积确定为该量子节点在所述设定时间长度内可额外处理任务的最大数量;所述剩余时间长度为所述设定时间长度与所述第一处理时长的差值。
在本发明一个实施例中,所述预期确定单元在确定为该节点调度指定数量的虚拟任务后完成每一个虚拟任务的预期时间时,具体包括:
确定该节点处理单个虚拟任务所需的第二处理时长;根据所述第一处理时长、所述第二处理时长和为该节点调度的虚拟任务的指定数量,确定为该节点调度指定数量的虚拟任务后完成每一个虚拟任务的预期时间。
在本发明一个实施例中,所述任务调度单元,具体用于:基于每一个节点完成每一个虚拟任务的预期时间,按照预期时间的先后顺序将虚拟任务进行排序;基于所述真实任务的接收时间,按照接收时间的先后顺序将真实任务进行排序;将排序后的真实任务和排序后的虚拟任务建立一一对应的映射关系;根据所述映射关系将所述真实任务调度给与其相映射的虚拟任务所对应的节点。
在本发明一个实施例中,所述任务调度单元在执行将排序后的真实任务和排序后的虚拟任务建立一一对应的映射关系时,具体包括:
将排序位置相同的真实任务和虚拟任务进行映射,得到初始映射关系;
确定所述初始映射关系中排序最后的至少一个目标虚拟任务是否对应同一个量子节点且对应的预期时间相同;
若是,则确定该至少一个目标虚拟任务的数量与该量子节点中量子线路数量的比值是否超过设定比值;若超过,则将所述初始映射关系作为建立的映射关系;若未超过,则按照排序位置从后及前的顺序确定所述初始映射关系中是否存在设定数量的虚拟任务对应电子节点,若存在,则将该设定数量的虚拟任务从排序中删除,并基于重新排序后的虚拟任务将排序位置相同的真实任务和虚拟任务进行映射,得到建立完成的映射关系。
在本发明一个实施例中,所述设定数量与该至少一个目标虚拟任务的数量之和,与该量子节点中量子线路数量的比值,超过所述设定比值且不大于1。
可以理解的是,本发明实施例示意的结构并不构成对一种量子电子混合平台的任务调度装置的具体限定。在本发明的另一些实施例中,一种量子电子混合平台的任务调度装置可以包括比图示更多或者更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件、软件或者软件和硬件的组合来实现。
上述装置内的各模块之间的信息交互、执行过程等内容,由于与本发明方法实施例基于同一构思,具体内容可参见本发明方法实施例中的叙述,此处不再赘述。
本发明实施例还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现本发明任一实施例中的一种量子电子混合平台的任务调度方法。
本发明实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质上存储有计算机程序,所述计算机程序在被处理器执行时,使所述处理器执行本发明任一实施例中的一种量子电子混合平台的任务调度方法。
具体地,可以提供配有存储介质的***或者装置,在该存储介质上存储着实现上述实施例中任一实施例的功能的软件程序代码,且使该***或者装置的计算机(或CPU或MPU)读出并执行存储在存储介质中的程序代码。
在这种情况下,从存储介质读取的程序代码本身可实现上述实施例中任何一项实施例的功能,因此程序代码和存储程序代码的存储介质构成了本发明的一部分。
用于提供程序代码的存储介质实施例包括软盘、硬盘、磁光盘、光盘(如CD-ROM、CD-R、CD-RW、DVD-ROM、DVD-RAM、DVD-RW、DVD+RW)、磁带、非易失性存储卡和ROM。可选择地,可以由通信网络从服务器计算机上下载程序代码。
此外,应该清楚的是,不仅可以通过执行计算机所读出的程序代码,而且可以通过基于程序代码的指令使计算机上操作的操作***等来完成部分或者全部的实际操作,从而实现上述实施例中任意一项实施例的功能。
此外,可以理解的是,将由存储介质读出的程序代码写到***计算机内的扩展板中所设置的存储器中或者写到与计算机相连接的扩展模块中设置的存储器中,随后基于程序代码的指令使安装在扩展板或者扩展模块上的CPU等来执行部分和全部实际操作,从而实现上述实施例中任一实施例的功能。
需要说明的是,在本文中,诸如第一和第二之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个…”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同因素。
本领域普通技术人员可以理解:实现上述方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成,前述的程序可以存储在计算机可读取的存储介质中,该程序在执行时,执行包括上述方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质中。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
Claims (9)
1.一种量子电子混合平台的任务调度方法,其特征在于,包括:
确定所述量子电子混合平台中每一个节点的当前运行状态;
针对每一个节点,均执行:根据该节点的当前运行状态,确定为该节点调度指定数量的虚拟任务后完成每一个虚拟任务的预期时间;
获取当前待调度的真实任务;
根据每一个节点完成每一个虚拟任务的预期时间,对所述真实任务进行调度;
为不同节点调度虚拟任务的指定数量不同;在所述确定为该节点调度指定数量的虚拟任务后完成每一个虚拟任务的预期时间之前,还包括:根据该节点的当前运行状态,确定该节点对当前已调度且未处理完成的任务所需的第一处理时长;判断所述第一处理时长是否小于设定时间长度;若是,则确定在所述设定时间长度内可额外处理任务的最大数量;将该最大数量确定为该节点调度虚拟任务的指定数量;其中,计算出每一个节点对当前已调度且未处理完成的任务所需的第一处理时长,该第一处理时长则为再次调度给节点的真实任务所需的等待时长;
该设定时间长度的确定方式为:针对每一个节点,均执行:将当前待调度的全部真实任务调度给该节点后,计算该节点处理完成该全部真实任务的第三处理时长,并计算该节点第四处理时长;所述第四处理时长为该节点的第一处理时长和第三处理时长之和;将多个节点中的最小第四处理时长作为所述设定时间长度。
2.根据权利要求1所述的方法,其特征在于,所述确定在所述设定时间长度内可额外处理任务的最大数量,包括:
确定该节点是否为量子节点,若是,则确定该量子节点的量子线路数量,并确定该量子节点在剩余时间长度内单条量子线路可处理任务的最大数量,将该最大数量与量子线路数量的乘积确定为该量子节点在所述设定时间长度内可额外处理任务的最大数量;所述剩余时间长度为所述设定时间长度与所述第一处理时长的差值。
3.根据权利要求2所述的方法,其特征在于,所述确定为该节点调度指定数量的虚拟任务后完成每一个虚拟任务的预期时间,包括:
确定该节点处理单个虚拟任务所需的第二处理时长;
根据所述第一处理时长、所述第二处理时长和为该节点调度的虚拟任务的指定数量,确定为该节点调度指定数量的虚拟任务后完成每一个虚拟任务的预期时间。
4.根据权利要求1所述的方法,其特征在于,所述根据每一个节点完成每一个虚拟任务的预期时间,对所述真实任务进行调度,包括:
基于每一个节点完成每一个虚拟任务的预期时间,按照预期时间的先后顺序将虚拟任务进行排序;
基于所述真实任务的接收时间,按照接收时间的先后顺序将真实任务进行排序;
将排序后的真实任务和排序后的虚拟任务建立一一对应的映射关系;
根据所述映射关系将所述真实任务调度给与其相映射的虚拟任务所对应的节点。
5.根据权利要求4所述的方法,其特征在于,所述将排序后的真实任务和排序后的虚拟任务建立一一对应的映射关系,包括:
将排序位置相同的真实任务和虚拟任务进行映射,得到初始映射关系;
确定所述初始映射关系中排序最后的至少一个目标虚拟任务是否对应同一个量子节点且对应的预期时间相同;
若是,则确定该至少一个目标虚拟任务的数量与该量子节点中量子线路数量的比值是否超过设定比值;若超过,则将所述初始映射关系作为建立的映射关系;若未超过,则按照排序位置从后及前的顺序确定所述初始映射关系中是否存在设定数量的虚拟任务对应电子节点,若存在,则将该设定数量的虚拟任务从排序中删除,并基于重新排序后的虚拟任务将排序位置相同的真实任务和虚拟任务进行映射,得到建立完成的映射关系。
6.根据权利要求5所述的方法,其特征在于,所述设定数量与该至少一个目标虚拟任务的数量之和,与该量子节点中量子线路数量的比值,超过所述设定比值且不大于1。
7.一种量子电子混合平台的任务调度装置,其特征在于,包括:
状态确定单元,用于确定所述量子电子混合平台中每一个节点的当前运行状态;
预期确定单元,用于针对每一个节点,均执行:根据该节点的当前运行状态,确定为该节点调度指定数量的虚拟任务后完成每一个虚拟任务的预期时间;
任务获取单元,用于获取当前待调度的真实任务;
任务调度单元,用于根据每一个节点完成每一个虚拟任务的预期时间,对所述真实任务进行调度;
为不同节点调度虚拟任务的指定数量不同;该装置还包括:数量确定单元,用于根据该节点的当前运行状态,确定该节点对当前已调度且未处理完成的任务所需的第一处理时长;判断所述第一处理时长是否小于设定时间长度;若是,则确定在所述设定时间长度内可额外处理任务的最大数量;将该最大数量确定为该节点调度虚拟任务的指定数量;其中,计算出每一个节点对当前已调度且未处理完成的任务所需的第一处理时长,该第一处理时长则为再次调度给节点的真实任务所需的等待时长;
该设定时间长度的确定方式为:针对每一个节点,均执行:将当前待调度的全部真实任务调度给该节点后,计算该节点处理完成该全部真实任务的第三处理时长,并计算该节点第四处理时长;所述第四处理时长为该节点的第一处理时长和第三处理时长之和;将多个节点中的最小第四处理时长作为所述设定时间长度。
8.一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时,实现如权利要求1-6中任一项所述的方法。
9.一种计算机可读存储介质,其上存储有计算机程序,当所述计算机程序在计算机中执行时,令计算机执行权利要求1-6中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310571867.1A CN116302453B (zh) | 2023-05-22 | 2023-05-22 | 量子电子混合平台的任务调度方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310571867.1A CN116302453B (zh) | 2023-05-22 | 2023-05-22 | 量子电子混合平台的任务调度方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116302453A CN116302453A (zh) | 2023-06-23 |
CN116302453B true CN116302453B (zh) | 2023-08-01 |
Family
ID=86794583
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310571867.1A Active CN116302453B (zh) | 2023-05-22 | 2023-05-22 | 量子电子混合平台的任务调度方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116302453B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117234696B (zh) * | 2023-11-13 | 2024-01-19 | 北京控制工程研究所 | 高频率gnc***多任务执行策略的确定方法及装置 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108628674A (zh) * | 2018-05-11 | 2018-10-09 | 深圳市零度智控科技有限公司 | 基于云平台的任务调度方法、云平台及计算机存储介质 |
CN108874538B (zh) * | 2018-05-31 | 2020-10-13 | 合肥本源量子计算科技有限责任公司 | 用于调度量子计算机的调度服务器、调度方法及应用方法 |
CN113010302B (zh) * | 2021-02-02 | 2022-11-01 | 中国人民解放军战略支援部队信息工程大学 | 量子-经典混合架构下多任务调度方法、***及量子计算机***架构 |
CN113326111A (zh) * | 2021-05-11 | 2021-08-31 | 山东浪潮科学研究院有限公司 | 一种量子计算机集群分布式监控调度方法 |
-
2023
- 2023-05-22 CN CN202310571867.1A patent/CN116302453B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN116302453A (zh) | 2023-06-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115328663B (zh) | 基于PaaS平台进行资源调度的方法、装置、设备和存储介质 | |
CN103348640B (zh) | 中继装置 | |
US8843929B1 (en) | Scheduling in computer clusters | |
CN116302453B (zh) | 量子电子混合平台的任务调度方法及装置 | |
CN113138860B (zh) | 消息队列的管理方法及装置 | |
CN111506434B (zh) | 一种任务处理方法、装置及计算机可读存储介质 | |
CN115134371A (zh) | 包含边缘网络算力资源的调度方法、***、设备及介质 | |
CN113762830B (zh) | 订单拆分处理方法、装置、设备及可读存储介质 | |
CN105824705B (zh) | 一种任务分配方法和电子设备 | |
CN113495779A (zh) | 一种任务调度方法和装置、任务执行*** | |
CN101374109B (zh) | 一种报文调度方法和调度装置 | |
CN112650449B (zh) | 缓存空间的释放方法、释放***、电子设备及存储介质 | |
CN107741873A (zh) | 业务处理方法及装置 | |
CN112491742B (zh) | 一种边缘计算终端资源调度方法及装置 | |
CN110958192B (zh) | 一种基于虚拟交换机的虚拟数据中心资源分配***及方法 | |
CN111367655B (zh) | 一种云计算环境中gpu资源调度的方法、***及存储介质 | |
CN107402812A (zh) | 集群资源调度方法、装置、设备及存储介质 | |
CN111522647B (zh) | 一种最小化租赁成本的公有云服务租赁方法 | |
CN115509715A (zh) | 一种分布式任务调度方法、装置和电子设备 | |
CN114610465A (zh) | 任务处理方法、装置及存储介质 | |
CN115705497A (zh) | 一种量子计算机操作***和量子计算机 | |
CN107045457A (zh) | 一种多租户资源共享的方法及装置 | |
CN113535388B (zh) | 面向任务的服务功能聚合方法 | |
CN110445729B (zh) | 一种队列调度方法、装置、设备及储存介质 | |
Li et al. | Rpbg: Intelligent orchestration strategy of heterogeneous docker cluster based on graph theory |
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 |